Sailsjs 基于 jwt 令牌的身份验证示例

Posted

技术标签:

【中文标题】Sailsjs 基于 jwt 令牌的身份验证示例【英文标题】:sailsjs jwt token based authentication example 【发布时间】:2016-06-01 23:46:53 【问题描述】:

我关注this Tutorial。

但是当我使用sails lift 运行我的应用程序时,我遇到了错误。

throw new TypeError('JwtStrategy 需要一个函数来从请求中检索 jwt (参见选项 jwtFromRequest)'); ^

TypeError: JwtStrategy 需要一个函数来从请求中检索 jwt(请参阅选项 jwtFromRequest)

请帮我解决这个错误。

【问题讨论】:

【参考方案1】:

问题出在JwtStrategy的选项配置中,根据github页面,缺少一个选项jwtFromRequest,你需要使用passport-jwt提供的提取器。

这些是我的修改:

var ExtractJwt = require('passport-jwt').ExtractJwt;
var JWT_STRATEGY_CONFIG = 
  jwtFromRequest: ExtractJwt.fromAuthHeader(),
  secretOrKey: SECRET,
  issuer : ISSUER,
  audience: AUDIENCE,
  passReqToCallback: false
;

希望对你有帮助

【讨论】:

以上是关于Sailsjs 基于 jwt 令牌的身份验证示例的主要内容,如果未能解决你的问题,请参考以下文章

使用 Jwt 的基于令牌的身份验证无法授权

混合身份验证 - 基于 Spring MVC 会话 + 基于 JWT 令牌

我如何在sailsjs上使用jwt检查用户是不是是管理员

使用 Spring 和 JWT 进行基于令牌的身份验证

如何基于使用 Oauth2 协议的身份验证改进 JWT 访问令牌和刷新令牌?

添加基于策略的授权会跳过 JWT 不记名令牌身份验证检查吗?