请求与Request.QueryString

Baz*_*Baz 12 vbscript asp-classic

这两个在VBScript中有什么区别:

Request("startDate")

Request.QueryString["startDate"]
Run Code Online (Sandbox Code Playgroud)

Request("startDate")记录在哪里?我在这里没有看到这种用法:

http://www.w3schools.com/asp/asp_ref_request.asp

Che*_*vel 18

RequestASP经典中对象的官方文档如下:http://msdn.microsoft.com/en-us/library/ms524948%28VS.90%29.aspx

引用此问题的相关部分:

通过调用Request(变量)而不使用集合名称可以直接访问所有变量.在这种情况下,Web服务器按以下顺序搜索集合:

  • 请求参数
  • 形成
  • 饼干
  • ClientCertificate
  • ServerVariables

如果多个集合中存在具有相同名称的变量,则Request对象将返回该对象遇到的第一个实例.


编辑:AnthonyWJones对这个问题做了很好的评论:避免使用Request("name")语法.实际上,这在上面的文档链接中提到:

强烈建议在引用集合成员时使用全名.例如,而不是 Request.("AUTH_USER")使用Request.ServerVariables("AUTH_USER").这允许服务器更快地定位项目.