开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 3052|回复: 4
收起左侧

[js/PHP求助] 学习笔记-session、Cookis、VIEWSTATE、EVENTVALIDATION

[复制链接]
结帖率:0% (0/2)
发表于 2012-10-17 00:10:50 | 显示全部楼层 |阅读模式   山西省晋中市
本帖最后由 落花落叶 于 2012-10-17 01:51 编辑

----------------------------------------------------------------asp.net(aspx)资料-------------------------------------------------------------
session喜欢丢值且占内存
Cookis不安全


Application
1.         Application用来保存所有用户共用的信息
2.         在Asp时代,如果要保存的数据在应用程序生存期内不会或者很少发生改变,那么使用Application是理想的选择。但是在Asp.net开发环境中我们把类似的配置数据放在Web.config中。
3.         如果要使用Application 要注意的是所有的写操作都要在Application_OnStart事件中完成(global.Asax),尽管可以使用Application.Lock()避免了冲突,但是它串行化了对Application的请求,会产生严重的性能瓶颈。
4.         不要使用Application保存大数据量信息
5.         代码:Application[“UserID”]=”test”;
        String UserName=Application[“UserID”].ToString();
Session
1.         Session用来保存每一个用户的专有信息
2.         Session的生存期是用户持续请求时间加上一段时间(一般是20分钟左右)
3.         Session信息是保存在Web服务器内存中的,保存数据量可大可小
4.         Session超时或者被关闭将自动释放数据信息
5.         由于用户停止使用应用程序之后它仍在内存中存留一段时间,因此这种方法效率较低
6.         代码:Session[“UserID”]=”test”;
        String UserName=Session[“UserID”].ToString();
Cookie
1.         Cookie用来保存客户浏览器请求服务器页面的请求信息
2.         我们可以存放非敏感的用户信息,保存时间可以根据需要设置
3.         如果没有设置Cookie失效日期,它的生命周期保存到关闭浏览器为止
4.         Cookie对象的Expires属性设置为MinValue表示永不过期
5.         Cookie存储的数据量受限制,大多数的浏览器为4K因此不要存放大数据
6.         由于并非所有的浏览器都支持Cookie,数据将以明文的形式保存在客户端
7.         代码:Resopnse.Cookies[“UserID”]=”test”;
        String UserName= Resopnse.Cookies [“UserID”].ToString();
ViewState
1.         ViewState用来保存用户的状态信息,有效期等于页面的生命周期
2.         可以保存大量数据但是要慎用,因为会影响程序性能
3.         所有的Web服务器控件都是用ViewState在页面PostBack期间保存状态
4.         不需要则关闭 @page 里面设置EnableViewState=false
5.         代码:ViewState[‘”ID”]=”yiner”;
   String ID =ViewState[“ID”].ToString();
Cache
1.         Cache用于在Http请求期间保存页面或者数据
2.         Cache的使用可以大大的提高整个应用程序的效率
3.         它允许将频繁访问的服务器资源存储在内存中,当用户发出相同的请求后
服务器不是再次处理而是将Cache中保存的数据直接返回给用户
4.         可以看出Cache节省的是时间—服务器处理时间
5.         Cache实例是每一个应用程序专有的,其生命周期==该应用程序周期
应用程序重启将重新创建其实例
6.         注意:如果要使用缓存的清理、到期管理、依赖项等功能必须使用Insert 或者Add方法方法添加信息
7.         代码:Cache[‘”ID”]=”yiner”;或者Cache.Insert(“ID”,”test”);
   String ID =Cache[“ID”].ToString();
Hidden
1.         Hidden控件属于Html类型的服务器控件,始终处于隐藏状态
2.         每一次提交的时候它会和其他服务器控件一起提交到服务器端



“id”属性为“__EVENTVALIDATION”的隐藏字段是ASP.NET 2.0的新增的安全措施。该功能可以阻止由潜在的恶意用户从浏览器端发送的未经授权的请求.

为了确保每个回发和回调事件来自于所期望的用户界面元素,ASP.NET运行库将在事件中添加额外的验证层。服务器端通过检验表单提交请求的内容,将其与“id”属性为“__EVENTVALIDATION”隐藏字段中的信息进行匹配。根据匹配结果来验证未在浏览器端添加额外的输入字段(有可能为用户在浏览器端恶意添加的字段),并且该值是在服务器已知的列表中选择的。ASP.NET运行库将在生成期间创建事件验证字段,而这是最不可能获取该信息的时刻。像视图状态一样,事件验证字段包含散列值以防止发生浏览器端篡改。
说明:“id”属性为“__EVENTVALIDATION”隐藏字段一般在表单的最下方,如果表单在浏览器端尚未解析完毕时,用户提交数据有可能导致验证失败。


--------------------------------------------------------asp资料---------------------------------------------------------------------------------http://www.3600gz.cn/forum.php?mod=viewthread&tid=122889
结帖率:0% (0/2)

签到天数: 1 天

 楼主| 发表于 2012-10-17 01:11:54 | 显示全部楼层   山西省晋中市
  其实,无论网站有多么复杂,获取数据的基础无外乎两点:
     1、抓包看链接、Coolie、Referer、Post参数、隐藏的submit参数等等
     2、处理编码并提取字符串
     只要精通这两个基本步骤,再加上充裕的时间、坚定的信念、充分的耐心和一点点运气,网页采集的工作就迎刃而解了!
回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 1 天

 楼主| 发表于 2012-10-17 01:14:06 | 显示全部楼层   山西省晋中市
在以后跳页时只要修改"...GridViewPagingForwardTo=***..."星号部分
回复 支持 反对

使用道具 举报

发表于 2013-1-23 14:38:21 | 显示全部楼层   上海市上海市
下次有人骂我了...我给他还回去..
回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 1 天

 楼主| 发表于 2012-10-17 01:16:41 | 显示全部楼层   山西省晋中市
笔记共三楼
先占楼(待添加)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表