从Node.js中的活动套接字重新创建http请求和响应
Recreate http request and response from active Socket in Node js
我正在创建一个系统,该系统将http请求传递给Node.js中的子进程。我无法使用child.send('Socket',req.Socket)将活动套接字传递给子进程,但在子进程中,我想重新创建http请求和响应对象,以便它们具有标头、参数、cookie等。
我使用的是Express,所以如果我能重新创建Express req和res对象,那就更好了。
我一直在努力,但没有成功。如果我执行以下操作,它将创建IncomingMessage对象,但标头等为空。
var http = require('http');
/* Child Process recieves the Socket */
var incomingMessage = new http.IncomingMessage( socket );
如果有什么方法可以实现我想要的,有什么想法吗?
您还可以使用以下隧道技巧:
let agent;
if (protocol == 'https:')
agent = new https.Agent();
else
agent = new http.Agent();
agent.createConnection = (opts, callback) => callback(false, socket);
const req = http.request({
method: method,
host: host,
port: port,
protocol: protocol,
path: path,
headers: headers,
agent: agent
}, function (res)
{
console.log(res.headers);
console.log(res.socket.remoteAddress);
console.log(res.socket == socket); // true
});
req.end();
相关文章:
- Firefox插件:保存到文本文件的HTTP日志,其中包含时间、用户名、计算机名;t创建文本文件
- 组合Bookmarklets以在HTTP和HTTPS之间创建切换
- 我想创建一个类似于http://www.creativecrisp.com/.
- 正确创建$http.get
- Node JS http-proxy - 创建的 URL 存在问题
- 在 node.js 中创建 http echo 服务器
- 如何创建一个 http 拦截器以在“响应”中返回错误
- 节点 js 找不到响应体 HTTP 创建服务器
- 在 Node 中,创建具有“等待连接”超时的 http 连接的好方法是什么
- 在 AngularJS 中成功的 http 请求上创建一个 DOM 元素
- Angular JS:Http:get on JSON 由本地 API 创建
- 从Node.js中的活动套接字重新创建http请求和响应
- 在创建工厂服务时,return$http.post在angular中到底意味着什么
- 创建的应用程序无法通过访问http://localhost:1841/MyApp.
- JavaScript创建的表单未提交到HTTP服务器
- 我用AngularJS创建了一个单页房地产列表web应用程序,决定使用/$http服务提供数据,但没有成功.有人知道为什
- 创建http.请求返回未定义
- 根据用户输入动态创建HTTP链接
- 在angularjs中使用post结果创建http get foreach循环
- Node.JS:如何创建 HTTP 聊天服务器