Отправка данных POST с запросом GET действительна? - PullRequest
19 голосов
/ 14 января 2010

Например, используя Curl, я могу «публиковать» данные в GET-запросе. Это действительная вещь? Я имею в виду:

  • Разве это не запрещено какой-либо спецификацией RFC?
  • Кто-то использует это по уважительной причине?

Спасибо за любую помощь.

Ответы [ 2 ]

23 голосов
/ 14 января 2010

См. RFC2616 - Протокол передачи гипертекста - HTTP / 1.1 , раздел 4.3 «Тело сообщения»:

Тело сообщения НЕ ДОЛЖНО включаться в запрос, если спецификация метода запроса (раздел 5.1.1) не позволяет отправлять тело объекта в запросах.

В разделе 9.3 «GET», включая сущность-тело, не запрещено.

Итак, да, вам разрешено отправлять тело объекта с HTTP-запросом GET.

6 голосов
/ 15 апреля 2015

Существует сценарий использования "уважительной причины".

asticsearch использует данные тела объекта в запросах GET, чтобы попытаться использовать глагол GET в качестве чтения, а также позволяет более сложную спецификацию, чем позволяет один URL (легко).

...