Строка запроса HTTPGET - PullRequest
       2

Строка запроса HTTPGET

0 голосов
/ 12 июня 2018

URL-адрес без имени, но у него есть значение, это все еще считается строкой запроса?

Например:

[HttpGet]
[Route("api/house/{Id}")]
public IActionResult GetHouseById(int Id)

ссылка будет: http://localhost:44565/api/house/1

Это все еще считается строкой запроса?

1 Ответ

0 голосов
/ 12 июня 2018

Нет, это часть пути и в RESTful номенклатуре не является параметром строки запроса.

Переменные пути являются обязательными компонентами маршрута и ДОЛЖНЫ быть предоставлены для определения соответствующего маршрута.Пропуск параметра id, когда он требуется для пути, должен вызывать 404 (если другой маршрут не соответствует api/house).

Однако параметры строки запроса необязательны.Они являются последней частью URI и встречаются после символа ?, например api/house?id=1.В этом стиле URI можно ожидать, что конечная точка вернет дом с идентификатором 1, если указан параметр строки запроса, или все дома, если он пропущен.

Наконец, вы должны отметитьпараметр строки запроса через атрибут FromUri и пропуск его по пути:

[HttpGet]
[Route("api/house")]
public IActionResult GetHouseById([FromUri]int id)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...