繁体   English   中英

Node js - Socket.io 客户端未连接到远程服务器

[英]Node js - Socket.io client is not connect to remote server

我正在尝试使用以下代码连接到 socket.io-client:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var port = process.env.PORT || 3000;

app.get('/', function(req, res){
  res.sendFile(__dirname + '/index.html');
});

io.on('connection', function(socket){

  console.log("Birisi bağlandı!");

  socket.on('chat message', function(msg){
    io.emit('chat message', msg);
  });

  socket.on('new-post', function(data){
    io.emit('posts', data);
});

  socket.on('disconnect', function(){
    console.log("Birisi çıktı!");
  });


});

http.listen(port, function(){
  console.log('listening on *:' + port);
});

客户端代码

<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js"></script>
<script src="https://code.jquery.com/jquery-1.11.1.js"></script>
<script>
        
var socket = io('http://139.59.104.188:3000');
              
</script>

但是客户端没有连接到服务器端。 控制台日志为空,我现在不知道为什么

您需要将socket.on('connect') function 添加到您的客户端:

<script>
        
var socket = io('http://139.59.104.188:3000');
             
socket.on('connect', () => {
  console.log('connected to backend');
});

</script>

一旦您的客户端连接到后端,您的客户端(=浏览器)控制台将显示该消息。

您可能应该尝试推迟在客户端上加载脚本

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM