我的iOS应用在从启用了SPDY的HTTPS nginx网络服务器加载图像时遇到网络问题。此处描述了此问题:Sending SPDY requests results in "The request timed out" errors with NSUrlSession in iOS
我正在使用NSURLSession进行网络连接。我做了实验,并确认如果我在服务器端关闭SPDY,我的问题就解决了。不幸的是我无法在生产nginx服务器上关闭SPDY,因为我无法控制它。我可以在iOS应用中关闭SPDY吗?
OS X:10.10.4(14E46),iOS:8和9,Xcode:7.0(7A218),nginx:1.9.4
答案 0 :(得分:1)
您可能能够使用nginx将作为非SPDY,非HTTP / 2请求处理的内容预先填充NSURLRequest中的Upgrade头字段,例如
升级:TLS / 1.2
但URL加载系统可能只是踩踏它,在这种情况下,禁用它的唯一方法是将服务器配置为比较用户代理字符串(或您提供的任何其他标头)并拒绝升级连接。