Kal*_*lle 9 iphone networking web-services network-programming
我已经在一个项目上工作了一段时间,它有一个内置的HTTP服务器,它运行在端口8080上.用户被告知通过例如http://192.168.1.4:8080/访问设备- 效果很好.最近我意识到应用程序可以使用端口80来消除对":8080"的需要,但是如果我尝试将端口设置为80,则会因"常规CFSocket错误"而崩溃.
有关如何在应用程序上为Web服务器启用端口80的任何想法?
以下是一些屏幕截图:
首先 - 在iPad上,应用程序显示您可以访问它的URL.
iPad http://enrogue.com/port80/ipad.jpg
第二 - Firefox,IP:
FF by IP http://enrogue.com/port80/firefox_byip.png
以上是来自商店的真实应用程序,它不是越狱魔法或任何东西.我知道端口<1024是为UNIX系统上的管理员保留的,所以上面的应用程序显然正在做一些特定的事情来访问端口.
您可以绑定到设备的IPv4接口上的端口80,但不能绑定到IPv6接口,而不能绑定到模拟器中.您需要修改套接字代码以仅侦听IPv4接口,对于模拟器,您可以有条件地使用其他端口:
#if TARGET_IPHONE_SIMULATOR
[httpServer setPort:8080];
#else
[httpServer setPort:80];
#endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4675 次 |
| 最近记录: |