правильный формат URI для передачи в массиве целых чисел? - PullRequest
0 голосов
/ 25 января 2020

Мне нужно получить отчет о покупке на основе набора идентификаторов доставки. Например:

  • ПОЛУЧИТЕ URI / отчет о покупке билета
  • Идентификаторы доставки [1,3,5,7]

Что будет правильным способом представить это в реализации REST? Кажется, он не отображается чисто на стандартный запрос REST. Вы бы порекомендовали вернуться к параметру строки запроса, например:

GET / report-ticket-report? DeliveryIds = 1,3,5,7

^^^ Я даже не полностью конечно, если для меня допустимо передать параметр qs в этом формате. Другой вариант - передать массив int через свойство в теле запроса json. Как бы вы справились с этим сценарием в реализации REST?

1 Ответ

0 голосов
/ 25 января 2020

Вы бы порекомендовали вернуться к параметру строки запроса, например:

 GET /purchase-ticket-report?deliveryIds=1,3,5,7

Отлично выглядит

  1. Это соответствует правилам производства RF C 3986
  2. Легко воссоздать, используя HTML форму
  3. Это легко описать как URI-шаблон , который будет понят любая библиотека шаблонов с поддержкой уровня 4.

Другой вариант - передать массив int через свойство в теле запроса json.

Это в крайнем случае - это может быть необходимо, если в списках может быть столько элементов, что вы начнете проходить через ограничения длины URI . Но если вы сможете сохранить идентификаторы в URI, это сделает кеширование намного проще.

...