2017-02-17 4 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

Возьмите скрипт часть от вашего клиента:

вар носка = новый WebSocket ("WS: // локальный: 8005");

Серверное приложение работает в этом порту, и все, что вам нужно, - это подключение к порту.

Смежные вопросы