"{
"data":{
"id":4,
"name":"Helena",
"email":"hh@gmail.com",
"created_at":"2015-03-26 21:13:16",
"updated_at":"2015-03-26 21:13:16"
}
}"
< /code>
Правильный ответ, но внутри кавычки. Я читал в PHP Docs, что curl_opt_returntranfer
возвращает результат как строку, но я не могу быть единственным человеком на планете, который просто хочет получить JSON. />
Я не знаю, что делаю не так, но я уже потерял пару дней, борясь с этим.[code]curl -i -H "Accept: text/html" http://laravel.project/api/v1/users/4 < /code> Это возвращает: < /p> HTTP/1.1 200 OK Server: nginx/1.6.2 Content-Type: application/json Transfer-Encoding: chunked Connection: keep-alive Cache-Control: no-cache Date: Sun, 29 Mar 2015 10:33:36 GMT Set-Cookie: laravel_session=eyJpdiI6ImNPTkZIYVJZSVRKaHBOZTR3SWh0dHc9PSIsInZhbHVlIjoiblpZYVJlN2dBY1ljejNIYUQycXpsNXRWd1I5a3JSRG8wSWdDOWlHVTMrYUcrdDBNVmVuZUNkOGtJb2M4bXFpTFF3cUdoTFZOVXBWXC82Q1luSGd5bjJBPT0iLCJtYWMiOiI0ZTEwOWQxMmVhMzY2NjI1Yzc1MTBmZmRmYjUyOGQwNDlhYzRjOTNiM2FiOWIyN2E1YjA0OTM4YTUxZmNmMzMzIn0%3D; expires=Sun, 29-Mar-2015 12:33:36 GMT; Max-Age=7200; path=/; httponly
{ "data":{ "id":4, "name":"Helena", "email":"hh@gmail.com", "created_at":"2015-03-26 21:13:16", "updated_at":"2015-03-26 21:13:16" } } < /code> Так что все выглядит хорошо: тип контента правильно установлен, а ответ в json.$ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $final_url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET"); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json')); $result = curl_exec($ch);
return json_decode($result); < /code> Я получаю этот ответ: < /p> {#165 +"data": {#167 +"id": 4 +"name": "Helena" +"email": "hh@gmail.com" +"created_at": "2015-03-26 21:13:16" +"updated_at": "2015-03-26 21:13:16" } } [/code] И, если я верну, результат $ без json_decode , я получаю это: [code]"{ "data":{ "id":4, "name":"Helena", "email":"hh@gmail.com", "created_at":"2015-03-26 21:13:16", "updated_at":"2015-03-26 21:13:16" } }" < /code> Правильный ответ, но внутри кавычки. Я читал в PHP Docs, что curl_opt_returntranfer [/code] возвращает результат как строку, но я не могу быть единственным человеком на планете, который просто хочет получить JSON. /> [code]class ApiController extends Controller {
// Base controller for API Controllers
protected $statusCode = 200;
protected function respond($data) { return Response::json([ 'data' => $data,