我有一个Laravel RESTful API设置,需要将JSON格式的数据返回到我的一个子域上的应用程序(因此不在Laravel应用程序本身内)。
在REST中,我回复如下:
return \Response::json(array(
"status" => "success",
"type" => "client",
"message" => "Nothing to see here!"
));
在子域应用程序的我的类中,我只是尝试将此响应返回到视图,打印输出以进行测试。
我希望我能回到JSON,但当我做一个简单的事情时:
echo $resp;
我什么都没得到
如果我这样做:
print_r( $resp );
或
json_decode( $resp );
我明白了:
HTTP/1.1 200 OK
Server: nginx/1.6.2
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.4.35
Access-Control-Allow-Origin: *
Cache-Control: no-cache
Date: Sat, 06 Dec 2014 04:18:15 GMT
Set-Cookie: laravel_session=eyJpdiI6Ik5DdDFGK2tJQ3ZCVkJPQnRtZHRaU2c9PSIsInZhbHVlIjoiT2tXSTJWYzRKUXZncG9NOFZBYkhOUTZRaUg1c3NmUXlHTjF5bzYyaTZRYUY4S3VBMEdwdjdwdXNUNHkwblppV1I5YUFsY2dodGNyRHh5SmZYeGFjcWc9PSIsIm1hYyI6Ijc0Mzg3MGNlNTBiYTEyNTE3MzNhZDVjNjUzNzMwNzk0ZTMwN2MwYmFiNDIyMGE0N2MyNTQxMDNlMDdiOGFmOTQifQ%3D%3D; expires=Sat, 06-Dec-2014 06:18:15 GMT; path=/; httponly
{"status":"success","type":"client","message":"Nothing to see here!"}
我不希望我的回复中的所有标题都像那样。或者我收到并试图错误地解析它。我在这里做错了什么?
答案 0 :(得分:0)
好的,这是一个愚蠢的错误,不是使用REST API,而是使用cURL调用API。
如果您遇到这种情况,请检查并确保您没有:
curl_setopt($ch, CURLOPT_HEADER, 1);
这将输出带有响应的标题并搞乱你的一天。我希望这有助于其他人。
答案 1 :(得分:0)
我的回报是这样的:
return Response::json(array($data));
只需将数组存储到变量中,然后将该变量调用到响应中。