我正在编写一个angular应用程序,并使用webpack / angular提供的proxy-config进行本地开发。
我有一个外部API,当我将应用程序部署到服务器时,它可以工作,它拾取location.href
并在正文中发送一些URL。
如果我可以在proxyconfig旁路中做到这一点,那么我不必在代码中写很多环境变量,并且我的代码在本地和服务器上都可以正常工作。
const PROXY_CONFIG = {
"/api/proxy": {
"target": "http://serverapi:3000",
"secure": false,
"bypass": function (req, res, proxyOptions) {
if (req.headers.accept.indexOf("html") !== -1) {
console.log("Skipping proxy for browser request.");
return "/index.html";
}
req.headers["origin"] = targetOrigin; // something like this but with body
// ## What I want is to update the body of any POST request containing my localhost url to target url as I am converting few of my headers
}
}
}
module.exports = PROXY_CONFIG;
这可能吗?我想要的是更新任何包含localUrl的POST请求的正文,并替换为targetUrl。
// something like this in bypass method or anywhere in proxy config
const body = String.fromCharCode.apply(null, new Uint16Array(req.body));
req.body = body.replace('localurl', 'targeturl);