NodeJ-如何重定向到特定页面

时间:2018-06-29 13:36:08

标签: javascript node.js

我当前正在使用NodeJS服务器。我使用if语句验证条件。例如,如果credential无效,如何将用户引导到特定页面?

if (credentials) {
   // go to the main page
}
else {
   // go the login page
}

2 个答案:

答案 0 :(得分:1)

您已经说过您正在使用ExpressJS。在ExpressJS中,您可以通过res.redirect进行重定向:

  

res.redirect([status,] path)

     

使用指定的path重定向到从指定的status派生的URL,该值是与HTTP状态码相对应的正整数。如果未指定,则status默认为“ 302“找到”。

答案 1 :(得分:0)

首先,您需要确定所使用的身份验证类型。有上百万种方法可以执行此操作,但是如果您不熟悉身份验证系统,我建议您使用FacebookGoogle登录这样的第三方身份验证系统。这些通常会在登录时为您提供某种身份验证令牌,并且基本上您可以检查存储的令牌是否存在,是否在缓存,Cookie,本地存储等中,以及是否尚未过期。如果一切都很好,请继续进行;如果没有,请重定向到登录页面。

如果要使其更安全,请不要在客户端编写任何凭据验证。让客户端的浏览器检查auth令牌及其新近度,然后将其发送到服务器。然后,服务器将通过将您路由到正确的页面来做出响应。

可能与此同时使用的另一种方法是在需要登录用户的每个页面上检查有效登录,而不是只有一个页面重定向到任一登录屏幕或您要去的地方。