最近在做一个书架项目,其中有一个Wi-Fi传书的功能。本人使用cocoaHttpServer进行开发,完成后,在iOS10.0,iOS10.2,iOS8.1,iOS8.4上测试,没有任何问题。但是一部iOS10.1.1的系统上,Wi-Fi传书的网页直接打不开。
卸载了各种可能存在防火墙的APP,都没有用。然而同类的APP的wifi传书功能都是可以使用的。今天突然在设置-开发者中,修改了一个设置“Allow HTTP Services”,原先关闭的,设置为打开,突然就可以了。真是百思不得其解!路过的高手们,请教一下,这到底是为什么?
卸载了各种可能存在防火墙的APP,都没有用。然而同类的APP的wifi传书功能都是可以使用的。今天突然在设置-开发者中,修改了一个设置“Allow HTTP Services”,原先关闭的,设置为打开,突然就可以了。真是百思不得其解!路过的高手们,请教一下,这到底是为什么?
解决方案
100
原因是你用的普通http服务来通信,所以失败了
苹果很早前就默认禁止了不安全的http通信,而提倡使用更安全的https协议。
开发者设置中的Allow HTTP Services只是全局允许了http通信而已,参考
passbook-tutorial
但是,苹果已经强制要求3月份之前,必须使用https,否则App无法上线,所以,还是需要考虑https协议的。参考:
What is ATS
总结就是,你必须使用https协议,才能保证app正常工作
苹果很早前就默认禁止了不安全的http通信,而提倡使用更安全的https协议。
开发者设置中的Allow HTTP Services只是全局允许了http通信而已,参考
passbook-tutorial
但是,苹果已经强制要求3月份之前,必须使用https,否则App无法上线,所以,还是需要考虑https协议的。参考:
What is ATS
总结就是,你必须使用https协议,才能保证app正常工作