gpt4 book ai didi

javascript - 使用 PassportJS 阻止 API

转载 作者:行者123 更新时间:2023-12-03 10:27:39 24 4
gpt4 key购买 nike

我有如下端点:

app.post(api + '/channels/:channel_id/albums', user.ensureAuthenticated, album.create);
app.get(api + '/channels/:channel_id/albums/published', user.ensureAuthenticated,album.publishedAlbums);
app.get(api + '/channels/:channel_id/albums', user.ensureAuthenticated, album.findAll);

一切都很好,但是将 user.ensureAuthenticated 放在每个端点中对我来说很烦人,是否有任何方法可以一次将 user.ensureAuthentication 全部放入?

例如:Laravel 有这样的选项,例如 beforeAuth,您可以创建一个 if,并在其中放置您想要保护的所有端点。

就像前:

if(user.ensureAuthenticated){
// endpoints declariations
}else{
// redirect to login
}

谢谢

最佳答案

您将在这里找到答案: Only allow passportjs authenticated users to visit protected page

尤其是这种代码:

//checks to be sure users are authenticated
app.all("*", function(req, res, next){
if (!req.user)
res.send(403);
else
next();
});

所有端点都将受到保护。

关于javascript - 使用 PassportJS 阻止 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29346019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com