我正在尝试为一个项目使用websockets。它需要使用ipad,尽管我似乎不能让它工作。
我已经下载了使用phpwebsocket http://www.flynsarmy.com/2012/02/php-websocket-chat-application-2-0/的代码副本。随后设置了服务器。我让它在不同的电脑,不同的浏览器上运行,没有问题。
然后我想在我的ipad (iOS5.1)上测试它,它不能工作。所以我确保了websocket能在ipad上工作,我发现他们确实能链接到http://websocket.org/echo.html。
然后我进一步查看,看到它正在尝试连接,但在大约15秒后断开连接,我假设超时。它显示在我的mac上的终端,说它已经断开连接。
我目前正在通过wifi将ipad连接到mac,以查看它是否是路由器,在终端IP地址中显示不同,以255.255.255.100结尾,而不是255.255.255.96
有没有人知道这是怎么回事,或者我该怎么做。
发布于 2012-04-01 00:28:24
啊!怎么这么乱呀。在that page 和project source上,弗林斯军队表示他正在使用PHPWebSocket,而实际上他正在使用php-websocket-server。(我已经在他的页面上提交了一条评论,指出了这个错误)。
这两个PHP WebSocket项目有很大的不同:
你的问题是这样的: Safari Desktop和iOS目前支持旧版本的Hixie协议,该版本不适用于任何基于php-websocket-的项目。
让WebSocket服务器同时支持协议的旧版本和新版本是相当容易的(大多数语言都有这样的实现),因为它可以从初始握手报头中检测到客户端/浏览器版本。然而,由于某些原因,缺少同时支持这两种功能的基于PHP的服务器。
https://stackoverflow.com/questions/9894934
复制相似问题