asp.net session


public FileContentResult Index(int Ran = 0) { VerifyCode v = new VerifyCode(); byte[] bytes = v.BuildImg(); Session["vcode"] = v.checkCode; return File(bytes, @"image/jpeg"); }


继续 MVC 验证码, 验证码验证的问题。

浏览器 通过 Url  ,进入 Control 层,进去上面的代码块,保存在 Session  里面,那么 Session 的本质是什么呢?

asp.net session_第1张图片

 

当你 注释掉 Session["vcode"] = v.checkCode; 这句话是,请求标头是没有 cookie 的,他的本质是cookie ,但它是存储在 浏览器 请求标头里面,似乎不是以一个文本存储在

Temporary Internet Files  临时文件夹中,点击 换一张 的时候 ,SessionId  会发生变化吗? 断点打在 Session["vcode"] = v.checkCode; 上,监视下 Session.SessionId,他没有变,

因为会话没有结束,关掉 浏览器,会话结束了,再进来,看看,果断变了。而我们的Cookie 就是一个保存在 客户端 浏览器临时文件夹的一个 文本文件。Session  客户端,服务端 都存放,

服务端 放在 Session 池里,结束 进程iis 进程 就 服务端就没了,或者等它过期,保存在客户端的Session  是放在浏览器这个软件 里面的,浏览器这个软件 占用 电脑内存,其实在内存条里面。 

你可能感兴趣的:(asp.net)