WebSocket错误:在WebSocket握手期间出错:没有在状态行中find响应代码
我想做一个tcp连接到我的服务器。 但是我每次都遇到错误…
到'ws://my.ip:1337 /'的WebSocket连接失败:WebSocket握手期间出错:在状态行中没有find响应代码:Echo服务器
客户:
var connection = new WebSocket('ws://my.ip:1337'); connection.onopen = function () { connection.send('Ping'); // Send the message 'Ping' to the server };
服务器:
var net = require('net'); var server = net.createServer(function (socket) { socket.write('Echo server\r\n'); socket.pipe(socket); console.log('request'); }); server.listen(1337, 'my.ip');
怎么了 ?
net.createServer
创build一个普通的TCP服务器 ,而不是一个websocket服务器 。 Websockets通过TCP使用特定的协议,普通的TCP服务器不遵循这个协议。 浏览器成功通过TCP进行networking级别的连接,但是接下来需要一个websocket握手,这个普通的TCP服务器不知道如何提供。
要使Node.js服务器侦听websocket连接,请使用ws
模块 :
var WebSocketServer = require('ws').Server , wss = new WebSocketServer({port: 1337}); wss.on('connection', function(ws) { ws.on('message', function(message) { ws.send('this is an echo response; you just said: ' + message); }); ws.send('send this message on connect'); });
- module.exports和外部范围
- 如何使用Node.js自动设置表单中的值
- 如何在sails.js中logging访问者信息?
- 在将数据导出到excel / csv angularjs的同时设置列宽和文字包装属性
- Loopback.js – 将基础“用户”模型扩展为“用户”,而不需要MongoDB创build“用户”和“用户”集合
- 未定义的NodeJS'toUpperCase'(由typescript生成)
- Dropbox API – 文件读取和上传node.js
- POST net :: ERR_INSUFFICIENT_RESOURCES,同时使用nodeJS上传多个图像
- 从async.series调用的原型函数中使用“this”