阿多尼斯.js"E_INVALID_METHOD:JWT 方案未实现注销方法



我正在使用:

  • 阿多尼斯 4.1.0,
  • 智威汤逊计划,蒙戈德

注册和登录工作正常,注销失败authController.js

async logout ({ request, response, auth }) {
await auth.logout()//falls here
return response.send('success')
}

代码:"E_INVALID_METHOD">

消息:"E_INVALID_METHOD:JWT 方案未实现注销方法↵> 更多

细节:https://err.sh/adonisjs/errors/E_INVALID_METHOD">

状态: 500

这里可能出现什么问题?

auth.logout(( 仅适用于基于会话的身份验证。

对于 JWT,您需要撤销用户的刷新令牌**

**对于 jwt 方案,仅撤销刷新令牌,因为实际令牌 永远不会保存在数据库中

这是 Adonisjs 4.1 的注销方法

async logout({ request, response, auth }) { 
const refreshToken = request.input('refreshToken');
if(!refreshToken){
// You can throw any exception you want here
throw BadRequestException.invoke(`Refresh Token missing`);
}
await auth
.authenticator('jwt')
.revokeTokens([refreshToken], true)
return response.send({status : 200, "message" : 'success'})
}

最新更新