zoukankan      html  css  js  c++  java
  • Session

    Session是服务端的一个状态保持机制。与cookie不同,Session是将数据保存到服务器的内存当中。cookie则是客户端的。

     一:创建Session 

    创建过程非常简单。与cookie除了在端的不同之外,Session可以存对象,字符,数字等。而cookie只能是字符串....

    //session保存当前的登录用户
     Session["user"] = manager;

    当给Session赋值时,会将数据存储到服务器的内存当中。并且每一个Session都会有一个SessionID作为标志。

    二:获取session

     //获取session
    if (Session["user"] != null)
    {
        Manager manager = (Manager)Session["user"];
        ViewData["manager"] = manager;
    }    

    三:Session过期时间

     默认是20分钟。

    也可以设置

    Session.Timeout = 5000;

    当用户在本次会话中,跳转到别的页面,我们可以拿到Session。

    当用户跳转到别的页面时,服务器会将将session对应的sessionid通过cookie的方式,返回给浏览器。浏览器接受到之后,会跳转页面,并将sessionid发送到服务器端。

    分析:

    假设用户登录的过程,在登录页面输入账号密码登录成功后,在服务器把用户的账号和密码赋值给session。登录成功后,之后页面会跳转。其实这里是服务器先告诉浏览器要跳转的地址,以及通过cookie的方式(这里没有指定时间,所以浏览器关闭cookie就没了)传递session对应的sessionid。然后服务器再请求这个要跳转网页,同时带上sessionid,这样服务器就会在session中通过id找。

    如果此时把浏览器关闭了,再快速的打开,然后请求页面,这时候,就不能成功获取对应的session,虽然服务器的session还没有过期,但是sessionid没有了,所以就取不到了。

    使用场景:

    主要用途就是登录之后的session校验。用户登录之后的页面是不能直接简单的输入地址就能访问的,是需要登录成功之后,才能访问的。所以当用户的账号密码正确的时候,创建一个session。当访问页面的时候去判断session有没有值,有值的话,那么访问,没有的话跳转到登录页面。

    ------------------some words----------------

    1.Session 开会,会议

    --------------------the end--------------------

  • 相关阅读:
    DDD领域驱动设计初探(四):WCF搭建
    DDD领域驱动设计初探(三):仓储Repository(下)
    DDD领域驱动设计初探(二):仓储Repository(上)
    编译环境搭建:Makefile
    cuowu
    Angular4+路由
    由href return false 来看阻止默认事件
    TypeScript的配置文件 tsconfig.json
    Java标记接口
    new Date()前面使用 +发生了什么
  • 原文地址:https://www.cnblogs.com/MzwCat/p/8481471.html
Copyright © 2011-2022 走看看