UnauthorizedError: invalid algorithm express-jwt
UnauthorizedError: invalid algorithm express-jwt
我在我的网站上显示一些来自节点服务器的 returns 数据。直到今天它的工作完美。现在,当我转到我的网页时,我的服务器控制台出现以下错误。我使用 Auth0
登录用户。
UnauthorizedError: invalid algorithm
at C:\workspace\New\MyApp\node_modules\express-jwt\lib\index.js:100:22
at C:\workspace\New\MyApp\node_modules\express-jwt\node_modules\jsonwebtoken\index.js:155:18
at nextTickCallbackWith0Args (node.js:420:9)
at process._tickCallback (node.js:349:13)
可能是什么问题?
我遇到了同样的问题。我使用 Auth0 登录用户。您必须检查算法类型。
如果您使用的是 Auth0 然后转到
客户端 -> 设置 -> 高级设置 -> OAuth
并检查算法类型。必须是HS256.
如果您没有使用 Auth0,那么还要检查算法类型。
HS256 不太安全,因为它是对称的(客户端和服务器之间共享相同的秘密)。看到这个问题:
您可以通过使用 node-jwks-rsa 模块检索签名密钥来维护 RS256:
import jwt from 'express-jwt'
import jwksRsa from 'jwks-rsa'
const secret = jwksRsa.expressJwtSecret({
cache: true,
rateLimit: true,
jwksRequestsPerMinute: 5,
jwksUri: 'https://<YOUR_AUTH0_DOMAIN>/.well-known/jwks.json',
})
const jwtCheck = jwt({
secret: secret,
audience: <YOUR_AUTH0_AUDIENCE_OR_CLIENT_ID>,
issuer: 'https://<YOUR_AUTH0_DOMAIN>/',
algorithms: ['RS256'],
})
app.use(jwtCheck)
使用这个
expressJwt({
secret: process.env.JWT_SECRET,
algorithms: ['sha1', 'RS256', 'HS256'],
})
在您的 expressJwt param() 中使用以下代码:
algorithms: ['sha1', 'RS256', 'HS256'],
Copy the algorithms and change/paste it on your function this methods helps me in postman, paw, robo 3t
我在我的网站上显示一些来自节点服务器的 returns 数据。直到今天它的工作完美。现在,当我转到我的网页时,我的服务器控制台出现以下错误。我使用 Auth0
登录用户。
UnauthorizedError: invalid algorithm
at C:\workspace\New\MyApp\node_modules\express-jwt\lib\index.js:100:22
at C:\workspace\New\MyApp\node_modules\express-jwt\node_modules\jsonwebtoken\index.js:155:18
at nextTickCallbackWith0Args (node.js:420:9)
at process._tickCallback (node.js:349:13)
可能是什么问题?
我遇到了同样的问题。我使用 Auth0 登录用户。您必须检查算法类型。
如果您使用的是 Auth0 然后转到
客户端 -> 设置 -> 高级设置 -> OAuth
并检查算法类型。必须是HS256.
如果您没有使用 Auth0,那么还要检查算法类型。
HS256 不太安全,因为它是对称的(客户端和服务器之间共享相同的秘密)。看到这个问题:
您可以通过使用 node-jwks-rsa 模块检索签名密钥来维护 RS256:
import jwt from 'express-jwt'
import jwksRsa from 'jwks-rsa'
const secret = jwksRsa.expressJwtSecret({
cache: true,
rateLimit: true,
jwksRequestsPerMinute: 5,
jwksUri: 'https://<YOUR_AUTH0_DOMAIN>/.well-known/jwks.json',
})
const jwtCheck = jwt({
secret: secret,
audience: <YOUR_AUTH0_AUDIENCE_OR_CLIENT_ID>,
issuer: 'https://<YOUR_AUTH0_DOMAIN>/',
algorithms: ['RS256'],
})
app.use(jwtCheck)
使用这个
expressJwt({
secret: process.env.JWT_SECRET,
algorithms: ['sha1', 'RS256', 'HS256'],
})
在您的 expressJwt param() 中使用以下代码:
algorithms: ['sha1', 'RS256', 'HS256'],
Copy the algorithms and change/paste it on your function this methods helps me in postman, paw, robo 3t