Перейти к содержимому

Фото
- - - - -

POST и POST body - в чём разница?

php curl

  • Вы не можете создать новую тему
  • Please log in to reply
2 ответов в этой теме

#1 simonsays

simonsays
  • Пользователь
  • 835 сообщений

Отправлено 12 марта 2014 - 22:10

Доброе время суток!

 

Начал работать с одним API, в документации написано, что запрос к API посылается в виде JSON. JSON при обращении должен содержаться в POST body.

Использую cURL (PHP)

 

curl_setopt($ch,CURLOPT_POSTFIELDS, $json);

 

Однако API выдаёт ошибку парсинга POST body. Отсылал саппорту свой JSON, сказали, что с ним всё в порядке. Пока молчат.

 

Тем временем, хотел выяснить, есть ли какая-то разница между самими терминами POST и POST body. Передаётся ли POST body как-то по-другому? Кто-нибудь знает?


  • 0

#2 skill-AB

skill-AB

    Huge Cojones

  • Постоялец
  • 9 702 сообщений

Отправлено 12 марта 2014 - 22:21

мне кажется POST это ты указываешь в заголовке что это идет POST запрос, а не GET

а body это уже те данные которые ты должен передать в этом запросе, так делается по той причине что хттп-хеадеры имеют ограничения на длину

 

вот тут пример есть

http://stackoverflow...-with-json-body


  • 0

летела жизнь в плохом автомобиле и вылетала с выхлопом в трубу


#3 Дык

Дык
  • Постоялец
  • 10 897 сообщений
  • Откуда:/dev/null

Отправлено 13 марта 2014 - 00:11

POST - это метод, POST BODY - пересылаемые данные (насколько понятно из контекста, потому что такого термина нет)

Я точно не знаю, но мои подозрения бы пали на сопроводительные header-ы.

 

Принимающая сторона должна понять, с каким типом данных (MIME-type) имеет дело и, как правило, это надо выставлять руками самому. Типо Content-type: "text/json" или "application/json"

У меня такое бывало с контроллером, который мне вместо JSON данных отдавал текстовую строку (в которую просто запихал закодированный JSON) не распарсенную без этих хеадров сопроводительных.  

 

Капни в эту сторону.


Сообщение изменено: Akhenaton (13 марта 2014 - 00:12 )

  • 0

Вначале делаю, потом думаю :)