Passport.js 如何强制使用Passport进行身份验证

Passport.js 如何强制使用Passport进行身份验证,passport.js,passport-local,Passport.js,Passport Local,我实施了两条路线: app.post('/login',passport.authenticate…); app.get('/admin',myfunction) 如果用户第一次登录,我已经让他重定向到/admin 如果用户直接进入get/admin怎么办?我如何确保除非他已登录,否则不允许他访问/admin并重定向到登录屏幕 此外,对于从应用程序访问的API,如果用户未通过passport验证,如何发送401?passport是需要包含路由保护的中间件 Passport.js是Express的

我实施了两条路线: app.post('/login',passport.authenticate…); app.get('/admin',myfunction)

如果用户第一次登录,我已经让他重定向到/admin

如果用户直接进入get/admin怎么办?我如何确保除非他已登录,否则不允许他访问/admin并重定向到登录屏幕


此外,对于从应用程序访问的API,如果用户未通过passport验证,如何发送401?

passport是需要包含路由保护的中间件

Passport.js是Express的中间件。您可以将其包含在需要保护的任何路由上,而不仅仅是登录路由/页面上

作为复习,对的批准答案和到非现场页面的链接也会有所帮助

保护API路由

首先,重复上面所说的……Passport是中间件,所以您需要将它包含在定义API的路由中。此外,见:

至于401,如果您还没有编写自己的处理程序,Passport将在失败时为您生成这些