Получение переменной POST - PullRequest
40 голосов
/ 29 января 2010

Я использую C # с ASP.NET.

Как проверить, был ли параметр получен как переменная POST?

Мне нужно выполнить различные действия, если параметр был отправлен через POST или GET.

Ответы [ 3 ]

92 голосов
/ 29 января 2010

Используйте это для значений GET:

Request.QueryString["key"]

И это для значений POST

Request.Form["key"]

Кроме того, это будет работать, если вам все равно, идет ли речь о GET или POST или из коллекции HttpContext.Items :

Request["key"]

Еще одна вещь, на которую следует обратить внимание (если вам это нужно), вы можете проверить тип запроса, используя:

Request.RequestType

Какой глагол используется для доступа к странице (обычно это GET или POST). Request.IsPostBack обычно работает для проверки этого, но только если запрос POST включает скрытые поля, добавленные на страницу платформой ASP.NET.

7 голосов
/ 29 января 2010

Используйте

Request.Form []

для переменных POST,

Request.QueryString []

для GET.

1 голос
/ 29 января 2010

В дополнение к использованию Request.Form и Request.QueryString и в зависимости от вашего конкретного сценария, также может быть полезно проверить свойство Page IsPostBack.

if (Page.IsPostBack)
{
  // HTTP Post
}
else
{
  // HTTP Get
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...