| 域名空间 下载中心 社区论坛 信息公告 my小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 网络赚钱 | 网站地图 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
|
简介 有许多聪明的办法可以解决http协议的无状态问题,例如对每个请求重复发送应用程序数据包、使用http认证机制来将请求映射到特定的用户、使用cookie来存储一系列请求的状态等。在asp.net技术中提供了一个非常有效的方案来保持状态,该方案隐藏了所有高难度的,具有挑战性的工作的细节,用户只需简单地使用system.web.sessionstate.httpsessionstate类。同时,你也可以像在asp.net程序地web页面(.aspx)中一样在web service的方法中使用这个类,只有一点小小的不同。 asp.net的session对象概述 asp.net的session状态信息在根本上通过两个机制保持。其一是使用cookie。当客户端发送一个请求到服务器端时,服务器将发回一个附加http set-cookie头的响应信息,而cookie的值就是以键/值对的形式保存在该信息里边。在对同一服务器的所有的同步请求中,客户端在http cookie头中发送cookie键/值对。然后服务器可以将并发的请求同初始的请求对应起来。asp.net使用一个保存会话的id的cookie来保持会话状态。该id标识被用来为特定的用户找到与其对应的httpsessionstate类的实例。类httpsessionstate仅仅提供了一个通用的数据集,你可以在其中保存你需要的任何信息。 asp.net用来保持状态的另外一个机制工作时无须使用cookie。一些浏览器被用户设置为禁止使用cookie或者干脆就不支持cookie,asp.net提供了一种机制来解决这个问题,它的主要原理是将一个请求重定向到一个包含asp.net状态id的url。当该请求被接受到时,这个嵌在url中的id被截取下来,服务器通过该id找到合适的httpsessionstate类的实例。这种方式在http协议的使用get方式的请求中工作的很好,但是在.net的xml web service代码中会出现问题。 必须指出的是,有些时候把信息直接存储在cookie中要比存储在session中更好。避免使用session可以节省服务器资源,而且你也无须考虑一些烦人的问题,比如定位一个特定的session对象、session对象因为请求的长时间的延迟而被移除或者在服务器上没必要地保留直到过期。然而,如果你有一些包含你不希望与你提供的服务的使用者共享的执行信息,或者有一些你不希望通过未加密的信道传输的私有数据,或者你认为将这些数据插入http协议头中是不切实际的,那么你就应该使用asp.net中的httpsessionstate,它将使你轻松解决这些问题。httpsessionstate类返回一个索引键,用以将一个特定的用户映射到一个为该用户保存信息的httpsessionstate类的实例。总之,无论是asp.net的httpsessionstate类还是http的cookie都可以在asp.net web service中使用。
编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:j2ee概述(6) 下一篇:在web service中使用asp.net状态保持(2) 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 最新更新 | 热点排行 | 推荐新闻 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||