【发布时间】:2023-03-05 06:27:01
【问题描述】:
我正在开发一个由一组中间件加上 node-http-proxy 模块组成的应用程序(使用 Connect not Express),也就是说,我有一个中间件链,例如:
midA -> midB -> http-proxy -> midC
在这种情况下,响应由代理请求到某个目标并返回内容的 http-proxy 编写。
我想创建一个中间件(比如midB)作为缓存。这个想法是:
- 如果 url 被缓存,缓存中间件将写入响应并避免继续中间链。
- 如果 url 未缓存,则缓存中间件通过中间件链中的请求位需要读取要缓存的最终响应内容。
如何做到这一点?还是有别的办法?
干杯
【问题讨论】:
-
所以您不想要客户端缓存,而是保存您的数据库调用(或其他)?我想说您可以在将响应发送到某种哈希映射之前保存它,然后在您的“缓存”中间件中查找它。
-
我刚刚更新了问题以获得更好的解释。谢谢
-
也许您可以简单地使用 github.com/jpodwys/superagent-cache 进行内部 HTTP 调用 - 它内置了所有内容。
标签: node.js caching middleware