端口上的NodeJS套接字*和*路径?

时间:2014-10-14 17:55:56

标签: node.js sockets

我想在ws://localhost:1234/mysocket之类的URI上设置基本套接字(模仿用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?

我特别没有要求提供涉及Socket.IO的解决方案。

修改

我觉得我可能真的需要在我的套接字服务器前设置代理?但这似乎有点奇怪。

1 个答案:

答案 0 :(得分:8)

由于您已经在使用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);