我试图了解外部请求达到<server-url>/user
时的流程。我了解个别术语here和代理的概念,但仍然没有真正联系-
const proxy = require('express-http-proxy');
app.use(
'/user',
proxy(selectProxyHost(config, app), {
preserveHostHdr: true,
timeout: 5000,
proxyReqPathResolver: req => req.originalUrl,
filter: req => (req.query || {}).format === 'json',
userResDecorator: (proxyRes, proxyResData) => {
if (proxyRes.statusCode >= 400) {
return { message: `Error: ${proxyRes.statusMessage || 'Unknown'}` };
}
console.log("proxyResData: ", proxyResData);
return proxyResData;
}
})
);
我添加了console.log("proxyResData: ", proxyResData);
来检查此处记录了什么,但是什么都没记录。
我无条件抛出错误-
userResDecorator: (proxyRes, proxyResData) => {
return { message: `Error: ${proxyRes.statusMessage || 'Unknown'}`
}
令我惊讶的是,页面仍然加载。我想了解这是如何工作的?