nodejs,websocket连接报错Connection closed before receiving a...
server
var io = require('socket.io')();
io.on('connection', function(socket) {
//接受消息
socket.on('message', function (msg) {
console.log('receive messge : ' + msg );
});
//发送消息
socket.emit('message', 'hello');
//断开连接回调
socket.on('disconnect', function () {
console.log('socket disconnect');
});
});
io.listen(3000);
client
<script>
window.onload = function () {
var ws = new WebSocket('ws://localhost:3000');
ws.onopen = function (e) {
console.log("连接服务器成功");
ws.send("1");
}
}
</script>
报错
index.html:14 WebSocket connection to 'ws://localhost:3000/' failed: Connection closed before receiving a handshake response
请问这是为什么呢? 如何解决呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(2)
往日情怀2022-09-18 18:50:22
尝试了一下直接这么写确实会有问题。
是这样的。你服务端用了socket.io这个包。
你客户端也得配套的使用socket.io-client这个包。
例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./socket.io.js"></script>
</head>
<body>
<script>
window.onload = function () {
var socket = io('ws://localhost:3000');
socket.on('connect', function(){
console.log('connect');
});
}
</script>
</body>
</html>
~没有更多了~
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
鬼啊 weex 就怎么整