Обработка вложенных запросов JSON POST в PHP - PullRequest
0 голосов
/ 03 июля 2018

Я пытаюсь, чтобы клиент Python отправил почтовый запрос, который содержит вложенный JSON, например

{"nested":{"field1":"response1", "field2":"response2"}}

Мой код Python здесь

from urllib.parse import urlencode
from urllib.request import Request, urlopen

url="http://localhost/api/vscore.php"
post_fields={"nested":{"field1":"response1", "field2":"response2"}}

request = Request(url, urlencode(post_fields).encode())
json = urlopen(request).read().decode()
print(json)

PHP код:

print_r($_POST["nested"]);

1010 * возвращается *

{'field2': 'response2', 'field1': 'response1'}

но когда я пытаюсь получить доступ к "field1" с помощью $ _POST ["nested"] ["field1"], он возвращает это:

{

вместо возврата «response1». Как я могу получить свой код для возврата полей во вложенном JSON?

1 Ответ

0 голосов
/ 03 июля 2018

Если запрос в форме json, вам следует сначала json_decode , а затем попытаться получить доступ. nested ключ должен быть доступен как:

$nested = json_decode($_POST["nested"], true);
$field = $nested["field1"];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...