我从我的站点内部网页/asset/setjob上的一个Web服务接收到一个JSON有效负载。以下是发布到/asset/setjob的JSON有效负载:
[{“作业”:{“源文件名”:“啤酒-饮用-Pig. mpg”,“当前_步骤”:“等待文件”,“编码配置文件ID”:“无”、“决议”:“无”,“状态网址”:“http://example.com/api/v1/jobs/1.json“,“标识”:1、“比特率”:“无”、“当前状态”:“正在等待文件”,“当前进度”:“无”,“远程标识”:“我自己的远程ID”}}]
这个有效负载在这个页面上发布一次。这个页面不是用来查看的,而是用来解析JSON对象的id和current_status,这样我就可以把它插入数据库了。我使用的是Zend框架。
我如何在Zend中接收这个有效载荷?我是$_GET ['json']还是$_POST ['job']?这些方法似乎都不起作用。我本质上需要将这个有效载荷赋给一个php变量,这样我就可以操纵它了。
我试过了
$jsonStrGet =变量转储($_GET);$jsonStrPost =变量转储($_POST);
我试过了:响应=这个-〉getResponse();$body = $响应-〉获取正文();
块引号
任何帮助都将不胜感激!谢谢。
4条答案
按热度按时间falq053o1#
可以通过以下方式获取有效负载数据(在action方法内部):
$body将包含原始JSON字符串:[{“作业”:{“源文件名”:...}]和$data变量将包含在有效载荷中传递的解码JSON数据。
unhi4e5o2#
按照@Saeven在Zend Framework 2中所说的,您应该使用$request-〉getContent()和\Zend\Json\Json::decode。
jexiocij3#
我不知道这里如何使用ZF,但是要访问请求参数,需要使用
(See manual)
在你的控制器里
然后,使用
Zend_Json::decode($var);
iaqfqrcu4#
不知道你在问什么,但是要把JSON字符串转换成对象,使用
Zend_Json::decode($foo)
?