微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何单行登录具有响应状态的代理请求?

如何解决如何单行登录具有响应状态的代理请求?

使用 http-proxy-middleware 我想在 单行登录代理收到请求的事实以及目标服务器的响应状态。像这样:

[info] 将 GET /some-resource/1234 代理到目标并在 xxx 毫秒内获得状态 200。

[info] 将 GET /some-resource/5678 代理到目标并在 xxx 毫秒内获得状态 500。

我现在有了这个,但它导致每个请求至少有 2 行日志。一个用于请求,一个用于目标的响应,和/或可能一个用于错误。读取大量并发请求会变得混乱。因此,我想要一行。

export const proxyMiddleWare = createProxyMiddleware({
  target: Config.proxy.Target,changeOrigin: true,onProxyReq: (proxyReq,req) => {
    logger.info(`incoming request to proxy ${req.method} ${req.url}`);
    restream(proxyReq,req);
  },onProxyRes: (proxyRes,req,res) => {
    logger.info(`incoming response from target`);
  },onError: (err,res) => {
    logger.info(`incoming error from target`);
  },});

你会怎么做?

我正在考虑向 req 处理程序中的 onProxyReq 添加一些属性。然后在 onProxyResonError 处理程序中检查该属性,并仅在另一个尚未记录时记录。但是带有响应的错误呢?...我希望错误状态也出现在日志中,但是如果响应事件早于错误事件怎么办。

如果会有互斥的事件(也许响应和事件是?)。或者只是一个我可以监听的事件总是调用一次,无论是错误、响应还是响应错误

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。