Skip to content

Support for unix sockets #5097

Open
Open
@thejhh

Description

@thejhh

Websockets has a support for unix sockets with a url like ws+unix:///path/to/file, but Socket.io doesn't seem to support it.

The server:

const path = './server.sock';

var app = require('http').createServer(function(req, res) {
    console.log('Request for ' + req.url);
    res.statusCode = 200;
    res.setHeader('Content-Type', 'text/plain');
    res.end('Hello World\n');
});

var io = require('socket.io')(app);

io.on('connection', function (socket) {
    socket.emit('news', { hello: 'world' });
    socket.on('my other event', function (data) {
        console.log(data);
    });
});

app.listen(path, function() {
    console.log(`Server running at ${path}`);
});

...and client:

const path = './server.sock';
var socket = require('socket.io-client')('ws+unix://' + require('path').resolve(path));
socket.on('connect', function(){
        console.log('connect');
});
socket.on('event', function(data){
        console.log('event: ', data);
});
socket.on('disconnect', function(){
        console.log('disconnect');
});

...but client doesn't connect...

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions