@BorisBrejcha

Как php обработать JSON запрос?

Здравствуйте.
Не являюсь разработчиком php , да и впринципе разработчиком на любом другом языке. Поэтому прошу помощи.
Серверу приходит запрос такого типа в формате JSON, например на адрес - domain.ru/alice/index.php
{
  "meta": {
    "locale": "ru-RU",
    "timezone": "Europe/Moscow",
    "client_id": "ru.yandex.searchplugin/5.80 (Samsung Galaxy; Android 4.4)"
  },
  "request": {
     "command": "где ближайшее отделение",
     "original_utterance": "Алиса спроси у Сбербанка где ближайшее отделение",
     "type": "SimpleUtterance",
     "markup": {
        "dangerous_context": true
     },
     "payload": {}
  },
  "session": {
    "new": true,
    "message_id": 4,
    "session_id": "2eac4854-fce721f3-b845abba-20d60",
    "skill_id": "3ad36498-f5rd-4079-a14b-788652932056",
    "user_id": "AC9WC3DF6FCE052E45A4566A48E6B7193774B84814CE49A922E163B8B29881DC"
  },
  "version": "1.0"
}

Документация от Yandex по работе с Яндекс.Диалоги.

Вопрос: Какой код нужен в index.php для того что бы обработать этот запрос и поместить его в массив?

Нагуглил функции json_decode и json_encode , но вопрос скорее не в том как работать с json, а как php скирпту принять POST/GET запрос и далее уже передать это все в json_decode. (Возможно задаю глупый вопрос, просьба направить в нужное русло)
  • Вопрос задан
  • 590 просмотров
Решения вопроса 1
@ynblpb_spb
дятел php
POST запрос в ваш скрипт будет содержаться в массиве $_POST в php

поэтому всё, что вам нужно, чтобы получить массив в php это

$massiv = json_decode($_POST['fieldname']);
где fieldname - имя переменной, которая должна быть указана в документации от Я.Диалогов
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@okeld
bogdan.co
Насколько я понял, этот https://stackoverflow.com/questions/16700960/how-t... вопрос прям повторяет ваш. Вам надо посмотреть повнимательнее на PHP cURL
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы