我的快递服务器必须将请求代理到另一台侦听unix套接字文件的服务器。
app.all('*', (req, res) => {
let opts = {
socketPath: 'file.sock',
path: req.url,
method: req.method,
headers: req.headers
};
const proxyReq = http.request(opts, (proxyRes) => {
proxyRes.pipe(res, {
end: true
});
});
req.pipe(proxyReq, { end: true });
});
问题是响应头没有从代理服务器传递到Express响应。客户端改为使用Express服务器头。
我的问题:
如何将所有proxyRes
正确地导入res
?
有没有办法可以避免解析代理服务器响应并将原始套接字数据传回客户端?这同样适用于请求。我希望将代理保持透明,同时将Express保持为顶级服务器。