如何在 express-unless 中为特定路由指定 Http 方法?

How can i specify a Http Method for a specific route in express-unless?

我正在使用 express-jwt 来限制对我的 API 路由的访问。

app.use(expressJWT(
    { secret: process.env.JWT_PASSPHRASE })
    .unless({
        path: [
            '/login',
            '/users',
            { url: '/', methods: ['POST'] }]
    })
)

现在 /login 路由可以像预期的那样在没有令牌的情况下访问。

现在我也想允许 /users 路由,但仅使用 POST 方法,

我已经根据文档进行了尝试,但我很确定我做错了,因为所有针对 /users 的请求方法都已打开。

我测试过的第二个选项:

app.use(expressJWT(
    { secret: process.env.JWT_PASSPHRASE })
    .unless({
        path: [
            '/login',
            '/users',
            { url: '/users', methods: ['POST'] }]
    })
)

好的,经过一番研究,我做了一个自定义回调,如下所示:

app.use(expressJWT(
    { secret: process.env.JWT_PASSPHRASE })
    .unless( req =>{
        return(
            req.originalUrl === '/login' ||
            req.originalUrl === '/users' && req.method === 'POST'
        )

    })
)