0
因此,我通過node-http-proxy代理我的API請求,原因有幾個。使用node-http-proxy更改響應cookie?
外部API的來源與實際客戶端不同,因此Cookie未被正確設置。代理顯然運行在同一個原點,所以我想要從API接收響應,並在代理內部更改cookie值以反映正確的來源。
這裏是我的當前設置:
// Proxy to API server
app.use('/api', (req, res) => {
proxy.web(req, res, { target: targetUrl })
})
proxy.on('proxyRes', function (proxyRes, req, res) {
console.log('RAW Response from the target', JSON.stringify(proxyRes.headers, true, 2))
console.log('The original request', req.headers.host)
})
基本上,我需要修改cookie來req.headers.host
,因爲這是正確的起源。
我見過Harmon,但是這看起來非常投入,並改變了你實例化你的整個應用程序,如果我理解正確。
有沒有辦法在之後以同步方式簡單修改proxyRes ?
這似乎很奇怪,有一個proxyReq
事件,可以讓你把它發出之前改變代理請求,但不等同,可以讓你改變的響應...