cookie,session,viewstate
- viewstate的原理是隐藏域。
protected void Page_Load(object sender, EventArgs e)
{
ViewState["v1"] = "hello,world";
}
- cookie是保存在浏览器的,一种是保存在缓存中,一种是保存在硬盘中。(保存在硬盘中的需要设置cookie的expires属性)
string strName = Request.Form["txtUName"];
string strPwd = Request.Form["txtPwd"];
if (strName == "aaaaaa" && strPwd == "cccccc")
{
//新建 包含了 登录用户名 的cookie对象
HttpCookie cook = new HttpCookie("uInfo", strName);
//设置cook的失效时间为两天之后(保存在浏览器所在电脑的硬盘中了)
cook.Expires = DateTime.Now.AddDays();
//设置一个cook用来保存cook失效时间
HttpCookie cookTime = new HttpCookie("time", DateTime.Now.AddDays().ToString());
//将 cookie对象加入响应流中的cookie集合
Response.Cookies.Add(cook);
Response.Cookies.Add(cookTime);
Response.Redirect("Default.aspx");//重定向 302
}
- session保存在服务器上。利用了保存在浏览器缓存中的cookie技术。session可以保存任何对象,可以在webconfig里设置session的在服务器上失效的时间
<system.web>
<compilation debug="true" targetFramework="4.0" />
<sessionState timeout="60"/>
</system.web>
可以自己写一个sessionmanager类来模拟session的技术(用cookie存sessionID)。
- 可以让ASPNET_STATE服务来保存session。(进程外session1)
- 可以让session保存在数据库里,用aspnet_regsql.exe(进程外session2)
- application
保存在服务器端,一个浏览器设置了,其他的浏览器也都可以访问。(相当于公共厕所)
protected void Button1_Click(object sender, EventArgs e)
{
Application.Lock();
Application["name"] = TextBox1.Text.Trim();
Application.UnLock();
}
protected void Page_Load(object sender, EventArgs e)
{
Application.Lock();
Response.Write("god welcome you mr:" + Application["name"]);
Application.UnLock();
}
application可以在服务器端做一些全局的配置。
可以给项目添加全局应用程序文件(*.asax),在application_start()方法里写一个application值,供将来全局的访问。
- form的runat="server"属性。有这个属性的时候,在生产的HTML代码里会有一个_VIEWSTATE的隐藏域。在后台就可以通过IsPostBack来判断是否是第一次访问。
cookie,session,viewstate的更多相关文章
- (11)Web程序保存状态的几种方式,Application,Session,Cookie,ViewState
WEb程序保存状态的方式有这样几种: 1.Application:保存在Application中的数据是全局有效的:Application里面存放的应该是访问多修 改较少并且是全局至少大部分 ...
- cookie,session,sessionid
cookie,session,sessionid http协议是无状态的,意思是每次请求的状态不会保存.因此,产生了cookie,session之类保存会话状态的机制.1.什么是cookiecooki ...
- Servlet学习笔记(1)--第一个servlet&&三种状态对象(cookie,session,application)&&Servlet的生命周期
servlet的404错误困扰了两天,各种方法都试过了,翻书逛论坛终于把问题解决了,写此博客来纪念自己的第一个servlet经历. 下面我会将自己的编写第一个servlet的详细过程提供给初学者,大神 ...
- 在IE浏览器中iframe跨域访问cookie/session丢失的解决办法
单点登录需要在需要进入的子系统B中添加一个类,用于接收A系统传过来的参数: @Action(value = "outerLogin", results = { @Result(na ...
- 会话Cookie及session的关系(Cookie & Session)
会话Cookie及session的关系(Cookie & Session) 在通常的使用中,我们只知道session信息是存放在服务器端,而cookie是存放在客户端.但服务器如何使用sess ...
- cookie,session,token的定义及区别
参考了很多文章总结的. 1.cookie(储存在用户本地终端上的数据) 服务器生成,发送给浏览器,浏览器保存,下次请求同一网站再发送给服务器. 2.session(会话) a.代表服务器与浏览器的一次 ...
- Java web学习 Cookie&&Session
cookie&&session 会话技术 从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,成为一次会话.会 话技术就是记录这次会话中客户端的状态与数据的. 会话技术分为Coo ...
- Cookie&Session(会话技术)
一.Cookie技术 从打开一个游览器访问某个站点,到关闭这个游览器的整个过程成为一次会话 会话技术分为Cookie和Session Cookie:数据存储在客服端本地,减少对服务端的存储的压力,安全 ...
- Cookie Session和自定义分页
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
随机推荐
- OpenCV中IplImage/CvMat/Mat转化关系
原文链接:http://www.cnblogs.com/summerRQ/articles/2406109.html 如对内容和版权有何疑问,请拜访原作者或者通知本人. opencv中常见的与图像操作 ...
- sql server 查询数据判断为空
and xxx is NOT null and xxx is null
- 去掉二级页面 tabs 菜单, 修改返回按钮
imports: [ /*引入的模块 依赖的模块*/ BrowserModule, ComponentsModule, IonicModule.forRoot(MyApp,{ tabsHideOnSu ...
- android自定义dialog布局
dialog使用系统自带的有时候不是很美观,就想要自己来设计一个dialog界面,以下就是可以设计的dialog界面: public class CustomDialog extends Dialog ...
- php第五节课
封装 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o ...
- [luogu2587 ZJOI2008] 泡泡堂 (贪心)
传送门 Description 第XXXX届NOI期间,为了加强各省选手之间的交流,组委会决定组织一场省际电子竞技大赛,每一个省的代表队由n名选手组成,比赛的项目是老少咸宜的网络游戏泡泡堂.每一场比赛 ...
- Problem 52
Problem 52 It can be seen that the number, 125874, and its double, 251748, contain exactly the same ...
- Problem 22
Problem 22 Using names.txt (https://projecteuler.net/problem=22)(right click and 'Save Link/Target A ...
- Jquery-自定义表单验证
jQuery自定义表单验证
- 《团队名称》第八次团队作业:Alpha冲刺
项目 内容 这个作业属于哪个课程 任课教师博客主页链接 这个作业的要求在哪里 作业链接地址 团队名称 代码敲不队 作业学习目标 (1)掌握软件测试基础技术(2)学习迭代式增量软件开发过程(Scrum) ...