我需要Chrome Packaged應用程序和NodeJS腳本之間的socket.io連接。我熟悉NodeJS和socket.io,但不適用於Chrome Packaged App。我可以在Chrome Packaged應用程序中使用socket.io嗎?
這似乎很難(我還沒有找到任何文件解釋如何做到這一點)。 我首先嚐試簡單地加載從我的NodeJS(http://localhost:8080/socket.io/socket.io.js
)提供的socket.io.js腳本。但是CSP禁止它。
然後我發現the socket.io-client。我對英文不是很熟悉,但是我知道它會處理在沒有服務器的情況下加載socket.io客戶端腳本,對吧?
所以我嘗試加載腳本 「socket.io的客戶端/ socket.io-client.js」 在我background.html頁面而Chrome給我一個錯誤:
Uncaught Error: failed to require "socket.io" from "root"
我迷路了... 在嘗試進一步嘗試之前,我只問自己,socket.io是在Packaged App和Nodejs之間建立對話的好主意。
如果是這樣,我怎麼能加載和運行它的客戶端?
編輯: 我不知道我是否必須使用經典的Websocket而不是socket.io。我知道它適用於Packaged App,如here所示,但是它需要更多時間來開發socket.io提供的相同功能(傳遞objet)。
謝謝您的幫助:)
你有沒有看到這篇文章http://stackoverflow.com/questions/17757728/where-is-the-socket-io-client-side-js-file-located? –
是的,我現在就是這一切。但是對於Chrome Packaged應用程序,我無法加載外部腳本以確保安全性。 –
我有一個應用程序,我手動包含了socket.io.js客戶端,它的工作原理見下圖。這將有可能在Chrome網頁應用程序中工作 –