Node.js: Send GET request via unix socket

落花浮王杯 提交于 2019-12-05 04:28:28

To accomplish this without using the request module, try the following:

const http = require('http');

const options = {
  socketPath: '/tmp/static0.sock',
  path: '/volumes/list',
};

const callback = res => {
  console.log(`STATUS: ${res.statusCode}`);
  res.setEncoding('utf8');
  res.on('data', data => console.log(data));
  res.on('error', data => console.error(data));
};

const clientRequest = http.request(options, callback);
clientRequest.end();

Consider the following example :

client side code : Also you can do socket connection in some code :

<script src="https://cdn.socket.io/socket.io-1.4.5.js"></script>
<script>
  socket = io.connect('http://www.example.com' , {'force new connection':true});
  socket.on('event', function(){
    // code to execute
  });
</script>

server side code in nodejs : For this install npm, then 1)npm init 2)npm install --save express 3)npm insatll --save socket

var express = require('express');
var app = express();
var http = require('http');
var server = http.createServer();
var io = require('socket.io').listen(server);
var socket = null;

io.sockets.on('connection', function(soc) {
  socket = soc;
  console.log('socket connected');
});


app.get('/test', function(request, response) {
  var message = "Hello world";
  socket.emit('event', message);
  response.writeHead(200);
  reponse.write(message);
  reponse.end();
});

var server = app.listen(8080, '0.0.0.0');

You can hit this from browser a check

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!