2017-02-17 186 views
1

我尝试我的客户通过网络JS连接的插座,但我有这个错误连接接收握手回应之前关闭目前对WebSocket

getUser.js:29 WebSocket connection to 'ws://localhost:8005/wsserver.js' failed: Connection closed before receiving a handshake response 

但看看我的代码:

getUser.js

var sock = new WebSocket("ws://localhost:8005/wsserver.js"); 

$('#data1').append("alors"); 

sock.onopen = function (event) {  
    $('#data').append("server status opened" + event.currentTarget.URL); 
    sock.send(JSON.stringify("coucou")); 
    console.log("sended"); 
}; 
sock.onmessage = function (event) { 
$('#data').append(event.data); 
console.log(event.data); 
}; 
sock.onerror = function(error) { 
    console.log('WebSocket Error: ' + error); 
}; 

而服务器端代码是: wsserver.js

var WebSocketServer = require("ws").Server; 
var ws = new WebSocketServer({ port: 8005 }); 

console.log("Server started..."); 

ws.on('connection', function (ws) { 
    console.log("Browser connected online...") 

    ws.on("message", function (str) { 
    var ob = JSON.parse(str); 
    switch(ob.type) { 
    case 'text': 
     console.log("Received: " + ob.content) 
     ws.send('{ "type":"text", "content":"Server ready."}') 
     break; 
    case 'image': 
     console.log("Received: " + ob.content)   
     console.log("Here is an apricot...") 
     var path ="apricot.jpg"; 
     var data = '{ "type":"image", "path":"' + path + '"}'; 
     ws.send(data); 
     break; 
     } 
    }) 

    ws.on("close", function() { 
     console.log("Browser gone.") 
    }) 
}); 

但错误仍在这里,我不明白为什么

回答

1

采取脚本部分远离你的客户端:

VAR袜子=新的WebSocket( “WS://本地主机:8005”);

服务器应用程序正在该端口中运行,并且您只需连接到该端口。

相关问题