gpt4 book ai didi

javascript - 手动链接 Express 中间件

转载 作者:行者123 更新时间:2023-11-30 00:14:46 25 4
gpt4 key购买 nike

我目前使用 2 个中间件:

Express-jwt它从请求中提取/验证 JsonWebToken,我自己的中间件检查 JWT 是否包含特定信息(权限)。

我想有条件地一起使用这些中间件(基于路由上是否有特定的 swagger 属性)。

我想做这样的事情:

let expressjwt = function(req, res, next) { ... };
let jwtValidator = function(req, res, next) { ... };

app.use((res, req, next) => {
if(req.swagger.someAttribute) {
expressjwt(req, res, jwtValidator(req, res, next));
// The issue here is that jwtValidator will get called even if
// expressjwt produces an error
} else {
next();
}
});

最佳答案

听起来问题是 - “只有当服务 A 成功时,您如何有条件地调用服务 B。”

这是 promises 的主要目标之一 - 它允许您将异步调用链接在一起并让它们有条件地“解决”。如果需要,我可以发布代码示例。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise

关于javascript - 手动链接 Express 中间件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35158298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com