Session 在我的网站的不同页面上授权用户的最有效方式?

Session 在我的网站的不同页面上授权用户的最有效方式?,session,authorization,Session,Authorization,我过去只做过单页网络应用;有了这些,一旦用户连接,我就会读取他们cookie中存储的密码散列,并将其与数据库中存储的值进行匹配,以确定用户是否已经登录 我现在想创建一个包含多个网页的网站,我刚刚意识到,每次用户进入一个新页面时都需要查询数据库;对我来说,这似乎效率极低。有没有更好的方法可以在不影响数据库/服务器的情况下维护与客户端的正在进行的会话?看看如何使用会话对象,例如HttpContext.session[“UserAuth”]=true 当您在第一个页面(例如登录)上验证用户时,您可以创

我过去只做过单页网络应用;有了这些,一旦用户连接,我就会读取他们cookie中存储的密码散列,并将其与数据库中存储的值进行匹配,以确定用户是否已经登录


我现在想创建一个包含多个网页的网站,我刚刚意识到,每次用户进入一个新页面时都需要查询数据库;对我来说,这似乎效率极低。有没有更好的方法可以在不影响数据库/服务器的情况下维护与客户端的正在进行的会话?

看看如何使用会话对象,例如HttpContext.session[“UserAuth”]=true

当您在第一个页面(例如登录)上验证用户时,您可以创建一个会话,如上面的示例所示。然后,一旦重定向到下一页,只需检查会话是否确实存在并且有效

检查会话:

因此,要检查用户是否有效的每个页面都可以执行上述检查。只要您在数据库身份验证时在第一页上创建了会话

请注意,上面的代码只是为了让您了解如何做到这一点


“UserAuth”只是一个简单的名称,即您为正在存储的会话指定的名称。它可以是任何东西。在本例中,您存储在会话中的值为“true”

因此,当您检索会话的值时,您只需得到“true”,这意味着用户已登录

例如,当您注销用户时,您可以将会话“UserAuth”的值更改为false,更改方式与最初创建会话的方式相同

乙二醇

HttpContext.Session[“UserAuth”]=false


哪种编程语言?@HankyPankyㇱ 我正在使用Node.js;但是这不重要,对吗?那么userauth是什么呢?随机生成的散列?
   if(HttpContext.Session["UserAuth"] != null)
   {
     if(HttpContxt.Session["UserAuth"].toString() == "true")
     {
        //Session is valid and user is logged in.
     }
     else{
       //Session is invalid and user is not logged in.
         }
   }