@ovignatov

Как принять POST json запрос на php?

Всем привет! Возник вопрос, с которым мучаюсь уже несколько дней.
Имеется сервис, который отправляет на указанную страницу POST запрос в формате json, мне же нужно его поймать на своей странице и добавить элементы в базу.

В документации прописано:
Пример запроса:
POST /page.php HTTP/1.1
Host: host.host
Authorization: Bearer XXXXX
Content-Type: application/json
Accept: application/json
Cache-Control: no-cache
{
"date": "2017-04-25T01:29:20.4520214+00:00",
"stocks": [
    {
    "nnt": 111173,
    "qnt": 5,
    "man": "man",
    "prcRet": 117.99,
    "name": "name",
    "dtComing": "2017-08-09T00:00:00 + 07:00"
    }
 ]
}

Пример успешного ответа:
HTTP/1.1 202 Accepted
[]

Пытаюсь поймать через php
header('content-type: application/json');
$v = json_decode(file_get_contents('php://input'));
echo json_encode($v);

Но на странице получаю NULL, хотя сервис говорит, что все гуд. Подскажите пожалуйста, как поймать этот json?
  • Вопрос задан
  • 12050 просмотров
Пригласить эксперта
Ответы на вопрос 3
profesor08
@profesor08 Куратор тега PHP
Парси php://input

// твои данные тут
$input = json_decode(file_get_contents("php://input"), true);


Если пусто, то по цепочке дальше: https://php.net/manual/ru/wrappers.php.php
Перебирай и найдешь все, что тебе прилетает.
Ответ написан
Комментировать
irishmann
@irishmann
Научись пользоваться дебаггером
Вот тут посмотрите, похожая ситуация
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽