Web视图状态简单记录
2016-11-23 14:31
190 查看
HTTP是无状态的,因此在与服务器交互过程中容易丢失页面的变化状态,如文本框中输入的文字。
因此就出现了视图状态,这个是用来在页面上记录当前页面的一些更改,并且会回传给服务器。
————————————————————————————————————————————————————————
视图状态的编码在未加密的情况下是使用Base64编码。
————————————————————————————————————————————————————————
关闭视图状态可以设置ViewStateMode和Enableviewstate两个属性。
其中Enableviewstate属性用于设置是否开视图状态,当Enableviewstate设置为false时ViewStateMode不起作用。包括包含的子控件也
无法使用视图状态。
通常的做法是将Enableviewstate设置为TRUE ,通过ViewStateMode来控制视图状态。
————————————————————————————————————————————————————————
在浏览器中可以看到页面会多出如下信息:
<input name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" type="hidden" value="19C54D70"></input>
</input>
<input name="__EVENTVALIDATION" id="__EVENTVALIDATION" type="hidden" value="/wEdAAK5pKGcwK4Di9f7k3djdgCq1ygvqpoSpnnSq393pn9qz7aCZ+bN6M8EEFKXQ/7fqeD5XcioZFOY4694uKsCbO5a"></input>
这些就是网页的视图状态。
在ASP.NET中,一些控件必然会有一部分信息被记录在视图状态中,比如
<input id="Text1" type="text" runat="server" enableviewstate="false"
clientidmode="Static"/><br />
在其中已经设置了关闭视图状态,但在调试中可以看到传回的sender变量中对应的text1对象中IsTrackingViewState还是为true。相对于enableviewstate=true,只是其中ViewStata记录的信息会少一些。
——————————————————————————————————————————————————————
因此就出现了视图状态,这个是用来在页面上记录当前页面的一些更改,并且会回传给服务器。
————————————————————————————————————————————————————————
视图状态的编码在未加密的情况下是使用Base64编码。
————————————————————————————————————————————————————————
关闭视图状态可以设置ViewStateMode和Enableviewstate两个属性。
其中Enableviewstate属性用于设置是否开视图状态,当Enableviewstate设置为false时ViewStateMode不起作用。包括包含的子控件也
无法使用视图状态。
通常的做法是将Enableviewstate设置为TRUE ,通过ViewStateMode来控制视图状态。
————————————————————————————————————————————————————————
在浏览器中可以看到页面会多出如下信息:
<input name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" type="hidden" value="19C54D70"></input>
</input>
<input name="__EVENTVALIDATION" id="__EVENTVALIDATION" type="hidden" value="/wEdAAK5pKGcwK4Di9f7k3djdgCq1ygvqpoSpnnSq393pn9qz7aCZ+bN6M8EEFKXQ/7fqeD5XcioZFOY4694uKsCbO5a"></input>
这些就是网页的视图状态。
在ASP.NET中,一些控件必然会有一部分信息被记录在视图状态中,比如
<input id="Text1" type="text" runat="server" enableviewstate="false"
clientidmode="Static"/><br />
在其中已经设置了关闭视图状态,但在调试中可以看到传回的sender变量中对应的text1对象中IsTrackingViewState还是为true。相对于enableviewstate=true,只是其中ViewStata记录的信息会少一些。
——————————————————————————————————————————————————————
相关文章推荐
- 新建web项目,并连接到Oracle数据库,实现简单的控制台输出数据库中的表记录
- System.Web.HttpException: 验证视图状态MAC失败。如果此应用程序由网络场或群集承载,请确保配置指定了相同的validationKey和验证算法……解决方案
- System.Web.HttpException: 验证视图状态MAC失败。如果此应用程序由网络场或群集承载,请确保配置指定了相同的validationKey和验证算法……解决方案
- 简单记录下Java web 中的中文编码问题
- 关于WebView顶部的滚动条简单但记录下供以后使用
- 在web端保存app的登陆状态的一个简单实现
- 如何动态加载web control在postback后记住视图状态(viewstate)
- 一个基于flask的web应用诞生 记录用户账户登录状态(6)
- 一步一个记录--简单的jquery轮播图,按钮状态控制,layer弹窗
- 简单记录一下二进制枚举状态子集的技巧
- 最简单的Spring MVC Web程序记录
- 简单记录一下MOCTF的三道web题
- asp.net开发的web系统,记录简单LOG的方法
- 简单记录Web相关
- 记录我的第一个用ssh框架开发的web项目——实现简单的登录注册以及增删查改(一)
- centos7简单搭建nginx+uwsgi+web.py的Python web环境(记录)
- SpringBoot 学习记录(一): 简单web项目
- NetWork获取连接状态/WebView的简单用法/当按返回键时返回堆栈内容
- WEB前端 -- CSS Hack简单记录
- 简单类型视图状态应用