Can node.js listen on UNIX socket?

node.js

node.js Problem Overview


Can node.js listen on UNIX socket? I did not find any documentation regarding this. I only saw the possibility of listening on a dedicated port.

node.js Solutions


Solution 1 - node.js

To listen for incoming connections in node.js you want to use the net.server class.

The standard way of creating an instance of this class is with the net.createServer(...) function. Once you have an instance of this class you use the server.listen(...) function to tell the server where to actually listen.

If the first argument to listen is a number then nodejs will listen on a TCP/IP socket with that port number. However, if the first argument to listen is a string, then the server object will listen on a Unix socket at that path.

var net = require('net');

// This server listens on a Unix socket at /var/run/mysocket
var unixServer = net.createServer(function(client) {
    // Do something with the client connection
});
unixServer.listen('/var/run/mysocket');

// This server listens on TCP/IP port 1234
var tcpServer = net.createServer(function(client) {
    // Do something with the client connection
});
tcpServer.listen(1234);

Solution 2 - node.js

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionLucView Question on Stackoverflow
Solution 1 - node.jsjoshperryView Answer on Stackoverflow
Solution 2 - node.jsDan GrossmanView Answer on Stackoverflow