我的my.origin1/myendpoint
端点重定向到另一个端点:
router.get('/myendpoint', {
var param = this.query.myParam;
this.redirect(`http://my.origin2/myotherendpoint?param=${param}`);
console.log(JSON.stringify(this.request.header,undefined,2));
})
控制台日志输出显示:
{
"location": "http://my.origin2/myotherendpoint?param=myParamValue",
"content-type": "text/html; charset=utf-8",
"content-length": "whatever"
}
但是,重定向请求获得了404,当我在fiddler中观察它时,我看到位置标题为my.origin1/myotherendpoint?param=myParamValue
。可能导致这种情况的原因是什么?
我已经浏览了代码并且没有任何中间件拦截请求,我还检查了我们的IIS设置,并且没有可能影响此功能的网址重定向。
答案 0 :(得分:0)
找到了解决方案。
IIS需要将代理设置reverseRewriteHostInResponseHeaders
设置为false