在公司电脑上开发的项目,在自己电脑上运行时报错:
在网上找到的解决方法是:
- (1).在Info.plist中添加 NSAppTransportSecurity 类型 Dictionary ;
(2).在 NSAppTransportSecurity 下添加 NSAllowsArbitraryLoads 类型Boolean ,值设为 YES;
问题因此解决,但为什么么会出现这种情况呢?
是因为苹果在iOS9里把HTTP统统改为需要用HTTPS了,虽然http协议要比https的效率更高,但后者却要比前者更安全些,基于此目的,Apple在iOS9版本发布后,对企业应用的发布强制性使用https协议,所以在iOS9以前可以用http协议的,换成iOS9之后,必然就会出问题。
那么什么是HTTP和HTTPS呢?
HTTP:(Hypertext Transfer Protocol)超文本传输协议,是互联网上最广泛的一种传输协议,特点是简单灵活、无状态、快速且每次连接只处理一个请求。信息是明文传输,因此安全性欠佳。端口为80.
HTTPS:(Secure Hypertext Transfer Protocol)即安全超文本文传输协议,他是基于HTTP开发的安全通信通道,是客户端和服务器间交换信息的通道,需要在服务器上部署SSL证书,也因此会降低传输性能,使其效率相较于http有所下降。端口为443.