簡體   English   中英

如何使用socket.io將TCP消息發送到遠程服務器

[英]how to send tcp message to remote server using socket.io

我和我的朋友都使用同一個帶有開放端口的wifi網絡。 我的朋友正在監聽8000端口,我想向他發送一條消息。 如何使用node和socket.io實現該目標? 非常感謝

設置簡單的Messenger的方法有很多,標准方法是在您或您朋友的計算機上設置單個socket.io服務器,如下所示:

var app = require('http').createServer(handler)
var io = require('socket.io')(app);
var fs = require('fs');

app.listen(8000);

function handler (req, res) {
  fs.readFile(__dirname + '/index.html',
  function (err, data) {
    if (err) {
      res.writeHead(500);
      return res.end('Error loading index.html');
    }

    res.writeHead(200);
    res.end(data);
  });
}

io.on('connection', function (socket) {
  console.log("user connected!")
  socket.on('message', function (message) {
    //Sends message to all connected sockets
    socket.broadcast.emit("message")
  });
});

然后,您的index.html應該具有一些用於連接服務器和發送消息的代碼:

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io('http://server-ip-or-domain-name:port');
  socket.on('message', function (message) {
    //processing incoming message here
    console.log(message);
  });

  function sendMessage(msg){
      //sends message to server
      socket.emit("message", msg);
  }
</script>

在這種設置下,您和您的朋友都應該可以訪問服務器計算機。 使用ping進行調試。

ps還沒有測試上面的代碼,但這就是想法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM