连接的另一台服务器上有一个 wss。假设它的地址是:wss://123.123.123.12:8843
我有一个nodejs/expressjs应用程序。如何使用 socket.io 连接到它?我知道如何为服务器/客户端设置实现 socket.io,但是如何为两台服务器(其中一台我无权访问)执行此操作。
如何设置我的 expressjs 应用程序以连接到 wss?有没有办法使用 socket.io 或者我需要另一种方式?
WebSocket。它是一个支持 WebSocket 的传输系统,但如果你想与其他 WebSocket 接口,使用 ws 模块会更好,Socket.IO 内部使用。它是这样使用的:
var WebSocket = require('ws');
var ws = new WebSocket('ws://www.host.com/path');
ws.on('open', function() {
ws.send('something');
});
ws.on('message', function(data, flags) {
// flags.binary will be set if a binary data is received
// flags.masked will be set if the data was masked
});
如果您实际上只想与另一台 Socket.IO 服务器通信,请在服务器上安装客户端。它的使用方式与浏览器客户端的使用方式相同。
npm install socket.io-client
然后用法:
var socket = require('socket.io')('http://host/path');
socket.on('connect', function() {
socket.on('event', function(data) { });
socket.on('disconnect', function() { });
});