4
我已經編寫了套接字的代碼:source在收到握手響應之前關閉套接字連接
我的代碼如下所示。
var port = 8081;
var app = require('http').createServer();
var io = require('socket.io')(app);
app.listen(port);
io.on('connection', function (socket) {
console.log("New user connected.");
socket.emit('news', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
console.log("server listening on: " + port);
但是當我在here(ws:// localhost:8081)上測試它時。我得到 錯誤:未定義 DISCONNECTED
在控制檯我得到錯誤:
WebSocket connection to 'ws://localhost:8081/?encoding=text' failed: Connection closed before receiving a handshake response
我還有一個問題,我有require('socket.io')和另一個require('ws')兩個實現。你能否建議我應該選擇哪一個。我正在開發它的Android應用程序。 –
在沒有更多的信息,我會去socket.io。它具有許多功能,如處理客戶端重新連接到服務器,以及如果websocket不可用,則回退到其他連接類型。我已經看到(相當老)的基準,顯示ws更高性能的處理更多的連接,但我不認爲差異在大多數情況下是相關的。既然你的目標是android,你可以使用他們的[android本機客戶端](https://github.com/socketio/socket.io-client-java)或者使用webviews的普通客戶端。 – cviejo