我正在处理连接到Web服务的iOS应用程序。对于开发和测试,我们使用Bonjour在本地网络上查找服务器,在登录过程中,应用程序提供连接到其中一个而不是生产站点。iOS模拟器拒绝连接到本地。主机名
由于升级到El Capitan,我无法从模拟器连接到运行在同一台Mac上的Web服务器。我能够重现使用模拟移动Safari浏览器,并附带股票的Python在OS X
- 打开终端Web服务器这个问题,启动Web服务器:
python -m SimpleHTTPServer 8000
- 模拟器里面打开Safari浏览器,输入网址:
http://my-computer-name.local.:8000/
模拟移动Safari显示“Safari无法打开页面,因为它无法连接到服务器。”
此外,在控制台每次我尝试加载URL出现以下消息:
assertiond[____]: assertion failed: 15A284 13A340: assertiond + 13207 [28CC4371-F3F9-3578-9436-310B23A2C638]: 0x1
其他可能相关的事实:
- 桌面Safari浏览器能够使用URL
http://my-computer-name.local.:8000/
连接 - Real Mobile Safari(位于同一网络上的iOS设备上)能够使用URL连接
http://my-computer-name.local.:8000/
- 模拟移动版Safari能够使用URL
http://127.0.0.1:8000/
进行连接(但我需要它与Bonjour提供的主机名配合使用)。 - 模拟移动Safari浏览器能够与一个URL连接到另一台机器就像
http://other-computer.local.:8000/
- 我使用模拟器版本9.0(SimulatorApp-620 CoreSimulator-179)
- OS X埃尔卡皮坦10.11(15A284)
- 有趣的是,在网上搜索UUID 28CC4371-F3F9-3578-9436-310B23A2C638只会产生少数几个职位。 (你可以用15美元修复这个bug!)
- 这似乎与App Transport Security没有关系。当ATS被禁用时,我的应用程序以这种方式运行。
你能够重现这个问题吗?我错过了什么吗?
我在OSX 10.10.5上,并使用Xcode 7.0(7A218),它有我尚未安装的挂起更新。在Simulator 9.0(SimulatorApp-620 CoreSimulator-179)上,第一次尝试失败,但可能是一个红鲱鱼。我删除了“本地”后面的点,它起作用。我试着用点回来,它的工作原理。我的Python是2.7.10 –
@FranK。嗯,是的,埃尔卡皮坦似乎是问题所在。另外,你的Python版本是TMI。 :-) – benzado
那么,你永远不会知道! –