首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心计算机论文计算机网络
   ASP 3.0高级编程(三)      ★★★ 【字体: 】  
ASP 3.0高级编程(三)
收集整理:佚名    来源:本站整理  时间:2009-01-10 10:10:06   点击数:[]    

scilla&LastName=Descartes”

窗体的GET和POST方法
在一个页面内使用

段时,可以设置打开的FORM标记的METHOD属性值为“GET”或“POST”,缺省值为“GET”。假如使用“GET”或省略其属性,浏览器将该值绑定在页面所有控件上,成为一个查询字符串,且附在被请求页面的URL上。
当这个请求到达Web服务器时,其值由ASP的Request.QueryString集合提供。然而,假如设置METHOD属性为“POST”,浏览器将值包装进发送服务器的HTTP报头中,通过Request.Form集合提供给ASP。
通过来说,可以在所有的HTML窗体中使用POST方法。然而,浏览器或服务器的URL字符串长度存在一定的限制。因此,附有长的字符串可能会引起溢出和某些字符串的字符被截掉。同时,查询字符串出现在浏览器的地址栏和所有的保存的链接和收藏夹中。不仅如此,还显露了通过Web服务器时在HTTP请求中不想显示的值,它也可能出现你的服务器和其他路由服务器的日志文件中。在HTTP请求报头中的值很少是可见的,并且不出现在日志文件中。
使用POST方法需要注意的小问题是,当用户重新下载时,窗体的值将不再保留,其值为空且必须重新输入。然而,当附在URL上时,其值被存储为一个链接,将被保留,因此将出现在所有的URL与字符串结合的请求中,这或许是个优点也可能是个缺点,这根据应用而定(一些浏览器在客户端上能够在一定范围内自动保留一个页面上的值)。
另一点是URL与查询字符串的结合体不能包含任何空格或其他非法字符,否则的话,Navigator和一些其他的浏览器将出现问题。非法字符是那些用来分隔URL和查询字符串的部分,例如“/”、“:”、“?”和“&”(IE能够自动将空格转换为正确的格式——加号“+”,但其他的非法字符不能处理)。ASP服务器对象提供URLEncode方法处理这种变换,以后章节讨论相关内容。

查看Request和Response对象内容
到目前,主要讨论了一些理论问题,没有列举特别的实例。因为已经讨论过的内容多数情况下互相之间是密切相关的。然而本书为这一章提供了一系列的实例页面,说明Request和Response对象的大多数属性。应用所讲过的实例,能够理解这些页面,并可进行相应的修改,用它们作为试验实例。
本章及其他所有章节的代码样例均提供给用户,可以从Wrox出版社站点下载。
http://webdev.wrox.co.uk/books/2610
http://www.wrox.com/Store/Details.asp?Code=2610
必须首先在Web服务器的WWWRoot内的子目录下安装实例,然后使用浏览器访问Chapter02子目录,使用:
http://your_server_name_or_IP/subdirectory_name/Chapter02/Default.asp
这里your_server_name_or_IP/subdirectory_name是安装下载文件的本地路径。
1、查看Request对象成员
这提供一个包含选页的菜单用来试验Request和Response对象,首先选择Using the Request Object,如下图所示:

下图显示一个HTML窗体的实例,包含一些预先设置好的值,可以按自己的想法编辑这些值,然后点击“Submit”按钮。

这将打开一个页面,如下图所示,显示集合和TotalBytes属性的全部内容。第一屏显示的是Form、QueryString和Cookies集合。

注意,假如在窗体页中编辑了HTML控件的值,对于Cookies集合以及其他的集合,在读者的计算机上的页面上可能显示不同的值。
可以从“Form Collection”段中看到窗体上的HTML控件的值如何在ASP的Request.Form集合中表示。也可以用原始的页(名称为request_form.asp)来试验和检测,以了解创建窗体的HTML和如何与相应值相联系。
这个页面后面是ClientCertificate集合。这里是空的,因为服务器不要求客户端提供证书。下面是的ServerVariables集合,下图的屏幕图显示的是集合中包含的有用的值。

在本书的后面附录中可以找到所有ServerVariables集合成员的一个列表,及其值的说明。然而,可从前面讨论的在请求页面时从客户端发出的HTTP报头中见到这些成员。当请求收到后,Web服务器也增加它本身的一些值到集合中,正如上面可以看到的运行在IIS 5.0创建的页面那样。
1) 页面是如何工作的
为了创建这个页面,使用了本章前面在对Form集合和如何访问其值的讨论中所看到的完全相同的代码。例如,遍历所有的集合(除Request.Cookies外),使用:
For Each objItem In Request.collection_name
Response.Write objItem & “ = “ & Request.collection_name(objItem) & “

Next
遍历Cookies集合,可以使用:
For Each objItem In Request.Cookies
If Request.Cookies(objItem).HasKeys Then
‘Use another For ... Each to iterate all keys of dictionary
For Each objItemKey in Request.Cookies(objItem)
Resonse.Write objItem objItem & “(“ & objItemKey & “) = “_
& Request.Cookies(objItem)(objItemKey) & “

Next
Else
‘Print out the cookie string as normal
Response.Write objItem & “ = “ & Request.Cookies(objItem) & “

End If
Next
为获得TotalBytes属性,可简单地使用:
Request.TotalBytes = <% = Request.TotalBytes %>


读者应该注意到,在两个集合中出现的某些值不

上一页  [1] [2] [3]  下一页


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:ASP 3.0高级编程(四)

  • 下一篇文章:计算机语言教学探讨
  • 返回上一页】【打 印】【关闭窗口
    中查找“ASP 3.0高级编程(三)”更多相关内容 5VAR论文频道
    中查找“ASP 3.0高级编程(三)”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››Internet时代的网络出版
  • ››惩治网络犯罪推进电子商务发展
  • ››Win2003服务器RPL远程启动服务的安...
  • ››网络营销与个人隐私保护
  • ››网络与未来出版
  • ››强化网站项目管理的需求分析
  • ››试谈计算机网络安全关键问题的分析...
  • ››浅论气象业务建设中网络故障与及时...
  • ››浅谈人防指挥计算机网络的安全性
  • ››计算机网络故障管理智能化研究
  • ››ASP制作学生档案管理系统
  • ››ASP技术访问WEB数据库
  • ››ASP.Net中程序构架与程序代码的分离...
  • ››ASP.NET的网站新闻管理系统设计与实...
  • ››ASP网页设计小技巧
  • ››ASP技术在交互式网页设计中的运用毕...
  • ››ASP 3.0高级编程(三)
  • ››ASP 3.0高级编程(四)
  • ››ASP 3.0高级编程(一)
  • ››ASP 3.0高级编程(二)
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .