之前我已经多次使用各种SAAS服务完成了这项工作,但我无法解析我从Blitline图像处理API获得的所谓JSON响应。
以下是我处理POST的方法:
$body=@file_get_contents('php://input');
print_r($body);
results=%7B%22original_meta%22%3A%7B%22width
OR
$body=rawurldecode($body);
print_r($body);
results={"original_meta":{"width ...
当我去打印$body->original_meta->width
时,我得到一个空字符串。你会意识到我没有json_decode()
$body
但那是因为它也会返回一个空字符串。
使用results=
删除substr($body, 8)
也无济于事。
有人可以帮忙吗?
答案 0 :(得分:2)
扩展我的评论:POST数据是标准的x-www-form-urlencoded数据,因此无需访问原始POST数据。您只需访问包含URL解码数据的$_POST
数组:
$data = json_decode($_POST['results']);
echo $data->original_meta->width;
答案 1 :(得分:1)
好的,这很丑陋但是有效......
$body = file_get_contents('php://input');
$body=rawurldecode($body);
$body=substr($body, 8);
$body=json_decode($body);
echo $body->original_meta->width; //1936