刚才运行了一段代码,来查看request.servervariables里面有多少值,看了一下,共50个!
代码<%=request.servervariables.count%>
以前感觉request.servervariables里的值很多,现在看看还是那么多,不过今天谈其中的一个值----http_referer
首先,我们先知道http_referer最常用的应用就是能够防止外部提交。
下列情况是从浏览器的地址栏正常取得request.servervariables("http_referer"):
1) 直接用<a href="">
2) 用submit或<input type="image">提交的表单(post或get)
3) 使用javascript提交的表单(post或get)
下面我们再看看request.servervariables("http_referer")不能正常取值的情况:
1) 从收藏夹链接
2) 单击主页或自定义的地址
3) 在浏览器中直接输地址
4) 使用javascript的location.href或者是location.replace()
5) <%response.redirect%>
6) <%response.addheader%>或者是<mete http-equiv="refresh">转向
7) 用xml加载地址
显然,request.servervariables("http_referer")在多数情况下是不能正常工作的。关于它的具体用法我会在以后的文章中详细的介绍,同时还会介绍request.servervariables("http_host")request.servervariables("server_name")之间的区别。
敬请关注!
request.servervariables里server_name与http_host之间有什么区别呢?
如果不仔细看,您应该看不出它们之间的区别。在网上搜了很多,还是也没有看懂,不过最后还是有一句话很是明白:http_host可以request出非80的server_port,简单地说就是,http_host=server_name:server_port。
在以前发表过关于http_referer作用的文章,现在结合它来写一个asp防止外部提交的函数
如对本文有疑问, 点击进行留言回复!!
asp中Request.ServerVariables的参数集合
网友评论