小编Y R*_*ock的帖子

如何通过节点 http-proxy 记录 websocket 流量数据

我想通过 http-proxy 代理 websockets,我可以记录接收数据,但是我无法从代理获取发送数据。我能怎么做 ?

#!/usr/bin/env node

var wstarget = 'ws://localhost:8080/?r='+(Date.now() / 1000 | 0);

var httpProxy = require('http-proxy');
var http = require('http');

var proxy = httpProxy.createProxyServer({});

proxy.on('open', function (proxySocket) {
 proxySocket.on('data', function (data) {
    //console.log('\n'+data);
    console.log('',data);  // Just log the receive data! Can't get the Send data?
 });
});

var server = http.createServer();

server.on('upgrade', function (req, socket, head) {
  console.log("Proxying websocket connection to "+wstarget);
  proxy.ws(req, socket, head, {
   target: wstarget,
   changeOrigin: true,
   ws: true});
}); …
Run Code Online (Sandbox Code Playgroud)

logging traffic http-proxy websocket node.js

1
推荐指数
1
解决办法
2085
查看次数

标签 统计

http-proxy ×1

logging ×1

node.js ×1

traffic ×1

websocket ×1