iOS9中不设置info.plist,能使用HTTP请求吗?


iOS9中不设置info.plist,能使用HTTP请求吗?

ios9

rakuwop 8 years, 10 months ago

Socket什么的应该都可以吧

嘻嘻大怪獸 answered 8 years, 10 months ago

可以的,App Transport Security,只是苹果对NSURL这一层做的处理,所以我们使用CFNetwork做网络处理的话,苹果就干涉不到了。
目前解决在iOS9中使用HTTP请求有下面两种方法:
1、在Info.plist中添加NSAppTransportSecurity类型Dictionary,在NSAppTransportSecurity下添加NSAllowsArbitraryLoads,Boolean为YES。
2、直接使用CFNetwork做网络请求,ASIHTTPRequest就是基于CFNetwotk做的封装,如果有需求的同学可以看看ASI里面的源码,如果某个时间段你又想要使用HTTPS的话,ASI对SSL/TSL的证书验证有点问题,证书验证还得自己封装一下才行。刚才我说道,ATS是苹果针对与NSURL这一层做的封装,所以我们使用CFNetwork或者更底层做网络请求的话是不受ATS限制的。
原文链接

宅男不会飞 answered 8 years, 10 months ago

Your Answer