iOS NSURLSession是否支持HTTP 100继续?

iOS NSURLSession是否支持HTTP 100继续?,ios,http,nsurlconnection,nsurlsession,Ios,Http,Nsurlconnection,Nsurlsession,当HTTP请求包括 Expect: 100-continue 在标头中,启用了一个特殊协议。这很复杂,但很有用 在我们运行的实验中,iOS8版本的NSURLSession在默认情况下似乎不会发送此expect头。我们仍在探索是否明确包含它 我们可以在苹果文档中找到的唯一一个引用声称,100 continue将适用于nsursession的前身,即nsurconnection。它 如果要将数据上载到兼容的服务器,URL加载系统还支持100(继续)HTTP状态码,这允许在发生身份验证错误或其他故障

当HTTP请求包括

Expect: 100-continue
在标头中,启用了一个特殊协议。这很复杂,但很有用

在我们运行的实验中,iOS8版本的
NSURLSession
在默认情况下似乎不会发送此expect头。我们仍在探索是否明确包含它

我们可以在苹果文档中找到的唯一一个引用声称,
100 continue
将适用于
nsursession
的前身,即
nsurconnection
。它

如果要将数据上载到兼容的服务器,URL加载系统还支持100(继续)HTTP状态码,这允许在发生身份验证错误或其他故障时继续上载。要启用对上传延续的支持,请将请求对象上的Expect:header设置为100 continue

我想要什么帮助 按优先顺序:

  • 苹果公司提供了详细的信息
  • 任何人都可以提供有关这在iOS上如何工作的信息
  • 我很想知道这在OSX上是如何工作的


    †我不确定这是否是对100 continue应该发生的情况的一个很好的描述,因为IIUC的一点是请求主体很大,您更希望发送请求头,获得服务器的预批准,然后开始发送主体


    附录 是一个有用的链接,讨论如何处理100 continue的变幻莫测


    是我在github问题上找到的一个非常有用的对话框,关于在OS X上使用
    NSURLConnection

    是的,如果您自己设置头,它会显式工作。事实上,如果内存可用,下载任务会自动使用它,而无需设置头。默认情况下,IIRC和其他任务不会这样做,前提是请求可能不是幂等的。

    当目标服务器从未响应时(使用100 continue标头授权正文传输),是否有方法启动正文传输?我有一个响应401的服务器(例如Digest auth),但在我的应用程序在auth delegate方法中完成其工作后,服务器从不响应inc是成功的。所以我的连接被关闭了,尸体永远不会被送出。