Подтвердить что ты не робот

Отправка параметров POST с помощью Postman не работает, но отправка параметров GET

Я пытаюсь протестировать простую страницу PHP, используя расширение Postman. Когда я отправляю параметры URL, script работает отлично (например, переменные доступны в параметре $_REQUEST). Когда я отправляю их как параметры x-www-form-urlencoded, параметр $_REQUEST содержит только PHPSESSID.

script:

<?php
var_export($_REQUEST);
?>

Когда я отправляю параметры URL, $_REQUEST включает их: URL parameters

Но когда я отправляю их как переменные POST, $_REQUEST не включает их: enter image description here

Что мне не хватает?

4b9b3361

Ответ 1

Я устанавливал URL-адрес в Postman как http://, но Apache перенаправлялся на https://, и каким-то образом переменные POST отбрасывались на этом пути.

После того, как я изменил его на https://, переменные POST работали правильно.

Смотрите также: fooobar.com/questions/130767/...

Ответ 2

Я столкнулся с той же проблемой в PostMan и Advance REST Client. Я проверил через скрипача и обнаружил, что моя полезная нагрузка не конвертируется в формат JSON.

Я передаю свои данные в Body как x-www-form-urlencoded введите описание изображения здесь

Вы можете исправить это, используя Content-Type как application/x-www-form-urlencoded в заголовке запроса. введите описание изображения здесь

Ответ 3

Просто используйте Body Tab и введите post parameters там. Обратите внимание, что Body Tab отключен, если выбран Get.

Ответ 4

Проверьте содержимое своего содержимого в заголовке. У меня возникла проблема с отправкой raw JSON и моего содержимого в качестве приложения /json в заголовок POSTMAN.

мой php видел jack все в сообщении запроса. Это произошло только после того, как я изменил тип контента на application/x-www-form-urlencoded с JSON в текстовом поле RAW и его тип как JSON, мое приложение PHP начало видеть данные сообщения. не то, что я ожидал при работе с сырым json, но теперь он работает для того, что мне нужно.

postman POST request

Ответ 5

Когда вы отправляете параметры с помощью x-www-form-urlencoded, вам нужно установить заголовок для запроса, используя Content-Type в качестве application/x-www-form-urlencoded

Ответ 6

У меня была такая же проблема. Чтобы исправить это, я добавил следующие заголовки:

Content-Type: application/json

Мне пришлось вручную добавить тип содержимого, даже если у меня также был тип "json" в параметрах поля исходного сообщения.

Ответ 7

Извините, если это поток Necromancy, но это все еще актуально сегодня, особенно с тем, сколько API используется!

У меня возникла проблема: я не знал, что в столбце "Ключ" необходимо указать: " Тип контента "; Я думал, что это был ключ пользователя, когда он вернулся в запросе, а это не так.

Так что что-то простое может помочь вам, я думаю, Почтальон мог бы лучше написать эту колонку, потому что мне даже не пришлось читать Документацию, когда дело дошло до использования Fiddler; тогда как я сделал с Почтальоном.

Postman picture

Ответ 8

Для меня сервер ожидал HTTPS-запросов, но я не указал это в URL-адресе. Крюк достигнет сервера, но тело будет пустым.

Ответ 9

Иногда проблема с версией в "Почтателе":

У меня такая же проблема. При отправке данных используется самая старая версия почтальона. В то время я получил пустые данные json на стороне сервера.
И Я исправил эту проблему, как только я удалю старую версию почтмана и установил ее с последней версией.

Ответ 10

Я только что установил самую новую версию Postman, и я до сих пор не могу заставить мои переменные записи быть прочитанными моим php-скриптом. Я тестировал с формой HTML, но код PHP в порядке. На почтальоне я пробовал body, form, json, все... всегда получаю пустой $ _POST.

Любые другие известные ошибки? Может быть, это "макинтош"?

Ответ 11

Имела ту же проблему, это было связано с сообщением заголовка от почтальона, которое не соответствовало данным, которые я отправлял. Отправлял данные формы и заголовок, где был установлен x-www-form-urlencoded, поэтому он отображал пустые данные в контроллере/функции... Очень глупая ошибка...