我使用Chrome Packaged Apps构建了一个Web服务器。我反复看到的问题是chrome.socket.accept()和chrome.socket.write()不会调用它们的回调函数。如果请求率小于每秒1个请求,它通常或多或少地可靠地工作。如果我超过它,那么我开始看到错误或缺少回调。
我使用Google(https://github.com/GoogleChrome/chrome-app-samples/tree/master/webserver)构建的示例“webserver”应用程序进行了类似的测试。它有同样的问题。在Web服务器停止响应之前,通常需要少于100个请求。重现问题的最简单方法是使用Chrome浏览器作为客户端并按住F5键几秒钟。
最好有一个示例应用程序,演示如何使用chrome.socket构建可靠的Web服务器。到目前为止,我尝试了几种不同的解决方法,用于监视应用程序本身的情况,并在套接字停止工作时重新启动套接字,但这并不容易,因为没有可靠的方法来检查连接状态或最后一次操作的状态被解雇。我尝试使用getInfo()方法,但无论情况如何,它总是返回“connected = true”。
我在Windows 7和Chrome OS(Chromebook)上看到了这一点。
答案 0 :(得分:1)
只是对此的更新。根据{{3}},问题现已解决。
答案 1 :(得分:1)
示例Web服务器应用程序还存在其他问题。我注意到我可以通过在浏览器中按住Ctrl-R来锁定示例应用程序。我写了一个更强大的,你可以在这里使用:https://github.com/kzahel/web-server-chrome