我想在一个URI上设置一个基本套接字ws://localhost:1234/mysocket(模仿用Java创建的另一个环境),到目前为止我只能设置它ws://localhost:1234/ 如何才能让它在一个特定的URL上托管而不仅仅是一个主机和港口?
这只是文档中的基本NodeJS套接字:
var net = require('net');
var server = net.createServer(function (socket) {
socket.write('Echo server\r\n');
socket.pipe(socket);
});
server.listen(1337, '127.0.0.1'); // <-- not sure what to do here?
Run Code Online (Sandbox Code Playgroud)
我特别不要求涉及Socket.IO的解决方案.
我觉得我可能真的需要在我的套接字服务器前设置一个代理?但这似乎有点奇怪.
由于您已经在使用WebSockets,因此您只需使用ws模块:
var http = require('http'),
WebSocketServer = require('ws').Server;
var server = http.createServer();
var wss = new WebSocketServer({
server: server,
path: '/mysocket'
});
wss.on('connection', function (ws) {
ws.send('echo server');
ws.on('message', function (message) {
ws.send(message);
});
});
server.listen(1234);
Run Code Online (Sandbox Code Playgroud)