2
내가 크롬웹 소켓 핸드 쉐이크
크롬 반환에 동의되는 핸드 쉐이크를 할 수있는 방법을 찾는하고 있지 않다
Node.js를 가진 웹 소켓 연결을 관리 코드를 구축을 위해 노력하고있다 "웹 소켓 연결 'WS : //127.0.0.1 : 8888 /'실패 : 오류 웹 소켓 핸드 쉐이크시 : 초 - 웹 소켓 수락 "이
< < >>>
와을 불일치3210
var http=require("http");
var crypto=require("crypto");
var server=http.createServer(function(req,res){
res.writeHeads("200","content-type:text/plain");
res.end();
});
server.on("upgrade",function(req,socket,head){
for(var item in req.headers){
console.log(item);
console.log(req.headers[item]);
}
var GUID="258EAFA5-E914-47DA-95CA-C5AB0DC85B11";
var secKey=req.headers["sec-websocket-key"];
var sha=crypto.createHash("sha1");
secKey+=GUID;
secKey=sha.update(secKey).digest("base64");
var key64=new Buffer(secKey);
key64=key64.toString("base64");
console.log(key64);
var headersReturn='HTTP/1.1 101 Switching Protocols\r\n';
headersReturn+='Upgrade: websocket\r\n';
headersReturn+='Connection: Upgrade\r\n';
headersReturn+='Sec-WebSocket-Accept:'+key64+"\r\n\r\n";
var boo=socket.write(headersReturn);
console.log(headersReturn);
socket.on("connect",function(){console.log("success");});
socket.on("data",function(data){
console.log(data);
});
});
server.listen(8888,"127.0.0.1",function(){
console.log("server is on 8888");
});
< < < >>>>
희망 사람이없는 것을 볼 것입니다.