我有一个用PHP编写的REST Web服务,我使用POST请求(使用curl来调用它)调用它。 Web服务应该返回一个JSON文档。 问题是,我不确定将此文档发送回Web服务客户端的正确方式是什么。只是将它回显出来就足够了吗?从PHP REST Web服务返回JSON结果
现在看起来这是我能得到JSON文件出现在POST请求($ result变量)的结果的唯一途径:
$result = curl_exec($ch);
我有一个用PHP编写的REST Web服务,我使用POST请求(使用curl来调用它)调用它。 Web服务应该返回一个JSON文档。 问题是,我不确定将此文档发送回Web服务客户端的正确方式是什么。只是将它回显出来就足够了吗?从PHP REST Web服务返回JSON结果
现在看起来这是我能得到JSON文件出现在POST请求($ result变量)的结果的唯一途径:
$result = curl_exec($ch);
您可以在Array或Object中格式化结果,然后用json头文件回显它。 即
$result_json = array('name' => 'test', 'age' => '16');
// headers for not caching the results
header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
// headers to tell that result is JSON
header('Content-type: application/json');
// send the result now
echo json_encode($result_json);
希望这有助于感谢
我实现它几次,我把它作为字符串发布到WS,并作为字符串再次响应,作为响应。我使用json_encode和json_decode函数...
感谢名单,将这些头确实解决了我是有格式问题(我的浏览器将无法识别该文件为有效的JSON文档)。我还想知道是否可以像JSON一样容易地输出XML。但是,我找不到与json_encode等效的函数。你知道这样的内置函数是否存在? – Epicurus 2011-04-20 14:17:21
不客气,我很高兴它帮助你。 – 2011-04-20 15:43:26