URlRequest.httpBody在swift 3.0中的URLLrotocol的startLoading()方法中是nil

时间:2016-12-21 05:43:43

标签: ios swift cocoa-touch nsurlsession nsurlrequest

我有自定义URLProtocol,它有一些自定义响应生成。现在我有一个要求,我需要在获得实际响应之前通过 httpBody (可以是json / String作为数据)向服务器发送一些信息

我的问题是,当我使用 httpBody 创建 urlRequest 时,使用URLSession通过一些会话配置(自定义{{1})来启动服务}包含在这里)

这将首先调用canInit - >规范 - > startLoading - > stopLoading,在这些所有方法中, request.httpBody 为零。

URLProtocol

1 个答案:

答案 0 :(得分:1)

当协议看到请求对象时,正文数据对象已经被标准化为正文流对象。打开正文流并从那里读取数据。