ASP系列讲座(十九)管理会话(3)
向 url 的查询字符串添加参数。例如:
http://myserver/myapp/start.asp?name=jeff
但是,某些浏览器,在表格被以 get 方法提交的情况下会丢弃查询字符串中传递的显式参数。
向表格中添加隐含值。例如,以下的 html 表格包含一个隐含的控件。此控件在真正的表格中不出现,而且对用户的 web 浏览器是不可见的。通过 http post 方法,表格除了传递用户提供的信息外,还传递用户标识。
<form method="post" action="/scripts/inform.asp">
<input type="text" name="city" value="">
<input type="text" name="country" value ="">
<input type="hidden" name="userid" value= <%=useridnum(i) %>
<input type="submit" value="enter">
本方法要求传输用户信息的所有链接目标被编码为 html 表格。
如果您当前没有使用 asp 会话管理,请关闭您的应用程序会话支持。当会话启用时,asp 向每个请求 asp 页的浏览器发送 sessionid cookie。要关闭会话支持,可清除 internet 服务管理器中的“应用程序选项”属性页中的“启用会话状态”复选框。
无会话的 asp 页
asp 也提供创建无会话页的功能,您可以使用该功能将会话的创建时间推迟到用户访问一个需要会话跟踪的 asp 页时。
无会话页不执行以下功能:
执行 session_onstart 过程。
发送会话 id cookie。
创建 session 对象。
访问用 <object> 标记创建的内建会话对象或会话作用域对象。
与其他会话请求顺序执行。 [来源 www.iocblog.net]
要将 .asp 配置为无会话,可使用下列语句:
<%@ enablesessionstate=false %>
您应将此脚本置于 .asp 文件的第一行,位于其他脚本之前。默认情况下,若省略此标记,则启用会话跟踪。
无会话 asp 页通过消除潜在的耗时会话操作,改善服务器的响应性能。例如,考虑以下情况,asp 页包含某个帧集中的两个 html 帧,帧 1 和 帧 2。帧 1 包含一个执行复杂脚本的 .asp 文件,而帧 2 包含一个简单的 .html 文件。因为 asp 顺序执行(即串行执行)会话请求,所以在帧 1 的脚本被执行之前,您将不会看到帧 2 的内容。但是,如果您将帧 1 设置为无会话,则 asp 请求将不再被串行处理,浏览器不必等待执行完帧 1 的内容就可以处理帧 2 的内容。
但是,不同帧的多个请求的处理方式最终还要取决于用户 web 浏览器的配置。某些 web 浏览器可能不理会您的 .asp 文件的无会话配置,照样串行处理请求。
[来源 www.iocblog.net]
Tag: Session
文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。