Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用passport js保护节点js中的路由_Javascript_Node.js_Express_Passport.js - Fatal编程技术网

Javascript 使用passport js保护节点js中的路由

Javascript 使用passport js保护节点js中的路由,javascript,node.js,express,passport.js,Javascript,Node.js,Express,Passport.js,我有一个express应用程序,其主服务器代码位于server.js文件中。在server.js文件中,有一个路由app.get('/dashboard',require('./dashboard/dashboard.js') 在dashboard.js文件中,我有许多路由,如/profile,/editProfile等。现在,为了保护我的/dashboard路由,我应该实现请求isAuthenticated()到每个路由?或者是否有其他方法通过实现单个身份验证功能来保护我的所有/dashboa

我有一个express应用程序,其主服务器代码位于server.js文件中。在server.js文件中,有一个路由
app.get('/dashboard',require('./dashboard/dashboard.js')


dashboard.js文件中,我有许多路由,如
/profile
/editProfile
等。现在,为了保护我的
/dashboard
路由,我应该实现
请求isAuthenticated()
到每个路由?或者是否有其他方法通过实现单个身份验证功能来保护我的所有
/dashboard
路由?

创建一个中间件,并将其添加到您的/dashboard,如下所示: app.get('/dashboard',checkAuthentication,require('/dashboard/dashboard.js'))


如下所述:

创建一个中间件并将其添加到您的/仪表板,如下所示: app.get('/dashboard',checkAuthentication,require('/dashboard/dashboard.js'))


正如这里所解释的:

您可以在到达仪表板路由之前传递中间件函数

app.get('/dashboard',
(req, res, next) => {
  // Run passport isAuthenticated() here.
  // If true, next();
  // If false, throw
},
require('./dashboard/dashboard.js');

您可以在到达仪表板路由之前传递中间件函数

app.get('/dashboard',
(req, res, next) => {
  // Run passport isAuthenticated() here.
  // If true, next();
  // If false, throw
},
require('./dashboard/dashboard.js');
我们必须在这里用app.use()替换app.get()。它现在可以工作了。谢谢。我们必须在这里用app.use()替换app.get()。它现在可以工作了。谢谢。