我现在已经退休,现在有一些时间学习如何开发 MEVN 应用程序;-) 我现在需要使用令牌来保护应用程序中的几个页面jwt。我可以登录用户并稍后读取其令牌:
app.get('/movies', (req,res) => {
jwtOptions.jwtFromRequest = ExtractJwt.fromAuthHeaderWithScheme('jwt');
console.log(Version + 'JWT token: ' + jwtOptions.jwtFromRequest(req));
Movie.find({}, 'name description release_year genre', (error, movies) => {
if(error) { console.log(error);}
console.log(Version + "Fetched " + movies.length + " movies");
res.send(movies);
});
});
Run Code Online (Sandbox Code Playgroud)
我在控制台中获取了用户令牌。美好的!此 get 请求尚未受到保护。为了保护它,我稍微修改了第一行:
app.get('/movies', passport.authenticate('jwt', { session: false }), (req,res) => {
...
Run Code Online (Sandbox Code Playgroud)
现在触发了一个错误。
未知的身份验证策略“jwt”
在阅读了各个网站上的几百万个问题和答案后,我没有任何想法来解决我的问题。我们将高度赞赏您的建议。
谢谢