Запрос против запроса. QueryString - PullRequest
11 голосов
/ 08 февраля 2012

В чем разница между этими двумя в VBScript:

Request("startDate")

Request.QueryString["startDate"]

И где Request("startDate") задокументировано?Я не вижу здесь такого использования:

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

Ответы [ 3 ]

16 голосов
/ 09 февраля 2012

Официальная документация для объекта Request в ASP classic находится здесь: http://msdn.microsoft.com/en-us/library/ms524948%28VS.90%29.aspx

Цитируем соответствующую часть по этому вопросу:

Все переменные могут быть доступны напрямую с помощью запроса (переменная) без названия коллекции. В этом случае веб-сервер выполняет поиск Коллекции в следующем порядке:

  • QueryString
  • Форма
  • печенье
  • ClientCertificate
  • ServerVariables

Если переменная с одинаковым именем существует в нескольких коллекциях, объект Request возвращает первый экземпляр объекта встречи.


РЕДАКТИРОВАТЬ: AnthonyWJones сделал большой комментарий по вопросу: избегайте использования синтаксиса Request("name"). Фактически, это упомянуто в ссылке на документацию выше:

Настоятельно рекомендуется при обращении к членам Коллекция полное имя будет использоваться. Например, а не Request . ("AUTH_USER") использовать Request.ServerVariables ("AUTH_USER"). это позволяет серверу быстрее находить объект.

2 голосов
/ 08 февраля 2012

См. Request () и Request.QueryString ()

Из того, что я понимаю, когда вы используете запрос самостоятельно, он вернет первый соответствующий элемент в коллекции запросов. хорошо объяснено в прилагаемом решении.

1 голос
/ 16 ноября 2012

Извините, что уточнил этот вопрос, но, учитывая предостережения против использования Request ("param"), мне пришлось прибавить два моих цента.В этом конкретном случае есть веская причина использовать Request ("param") вместо Request.QueryString ("param"): он позволяет вам писать код, который будет принимать параметры как часть строки запроса или при отправке через форму.Я регулярно сталкиваюсь с ситуациями, когда это не только удобно, но и желательно.

...