node.js - 如何使用 NodeJS 从客户端获取套接字的 header 请求

标签 node.js sockets

我对这件事还很陌生。我只是想知道是否可以获取 Web 套接字客户端请求 header 。 我在服务器端使用node.js:

  • 使用 ExpresJS 我可以获得如下 header :

    router.post('/', function (req, res, next) {
        console.log(req.headers);
    

    });

  • 使用 Web Socket,可以吗?

    var WebSocket = require('ws');
    var ws = new WebSocket('ws://www.host.com/path');
    ws.on('open', function open() {
         // how to get the headers
         ws.send('something');
    });
    

有可能吗? 谢谢

最佳答案

WebSocket 没有 header ,但它们的升级请求有。

var WebSocketServer = require('ws').Server
  , wss = new WebSocketServer({ port: 8080 });

wss.on('connection', function connection(ws) {

  console.log(ws.upgradeReq.headers);

  ws.on('message', function incoming(message) {
    console.log('received: %s', message);
  });

  ws.send('something');
});

请注意,您不能将 header 设置为 ws 请求的一部分。

关于node.js - 如何使用 NodeJS 从客户端获取套接字的 header 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27726003/

相关文章:

javascript - Express 应用程序不响应外部流量

javascript - 如何检查android权限 promise 是否成功?

windows - 无法将数据从环回地址发送到环回地址

node.js - 如果启用了 Uglify 中的动态扩展,如何使用 Grunt.js 监视任务只对更改的文件进行 uglify?

javascript - 这种 JavaScript 函数声明方式叫什么? (var) => {}

node.js - 更新 MongoDb 子文档中数组中的特定文档

c - 第二次运行getchar()到哪里去了

javascript - 音频传输android和node-webkit

c# - 通过C#中的TCP套接字将鼠标坐标发送到Unity Client

c - 尝试从服务器向客户端发送消息的段错误