Логотип   Простое и понятное управление
  Уникальные возможности по настройке
  Open Server скачали уже 1 376 837 раз!

Форум

Добро пожаловать, Гость!

Content-type: application/json не поддерживается?

Обсуждение проблем в работе программного комплекса
Iworb
Сообщения: 9
C нами: 2 мес 26 дней

Непрочитанное сообщение Iworb » 06 сен 2017, 12:55

Собственно, столкнулся с тем, что при отправке запроса на сервер с типом application/json серверная часть его не распознает: Request payload игнорируется и тот json, что в нем записан, не попадает в переменные ни $_POST, ни $_REQUEST.
Для примера можно создать локальный домен с index.php следующего вида:
<?php
echo var_dump($_POST);
echo var_dump($_REQUEST);

и послать туда POST запрос с данным заголовком и телом, к примеру
{"a":2}
Для POST запроса использовал Postman, но думаю, что можно и через консоль в браузере повторить его.

Аватара пользователя
Ink0gnit0
Сообщения: 60
C нами: 4 года 8 мес

Непрочитанное сообщение Ink0gnit0 » 06 сен 2017, 16:23

Iworb,
<?php
$request = file_get_contents("php://input");
print_r(isset($request ) ? $request  : 'Request  is empty!');

или
$_POST = json_decode(file_get_contents('php://input'), true);
print_r(!empty($_POST) ? $_POST : '$_POST array is empty!');

Iworb
Сообщения: 9
C нами: 2 мес 26 дней

Непрочитанное сообщение Iworb » 06 сен 2017, 16:41

Интересно. Даже не подозревал о существовании такого потока, спасибо.
Действительно payload попадает туда. Собственно, такой тип контента не является нативным и не может быть распознан автоматически?

Аватара пользователя
Ink0gnit0
Сообщения: 60
C нами: 4 года 8 мес

Непрочитанное сообщение Ink0gnit0 » 06 сен 2017, 16:46

Увы, нет. Чтобы массив $_POST был заполнен, Content-Type при отправке должен быть application/x-www-form-urlencoded или multipart/form-data.

Iworb
Сообщения: 9
C нами: 2 мес 26 дней

Непрочитанное сообщение Iworb » 06 сен 2017, 16:55

Доступно. Спасибо, буду от этого отталкиваться.


Вернуться в «Ошибки Open Server»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей