使用Javascript解析JSON.来自Laravel的JSON

Parsing JSON using Javascript. JSON from Laravel

本文关键字:JSON Laravel 来自 使用 解析 Javascript      更新时间:2023-09-26

我使用laravel查询谷歌的搜索api。下面是完成这个任务的代码:

Route::get('google/(:any)', function($query)
{
    $uri = "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=".$query;
    $response = Httpful::get($uri)->send();
    $r = json_decode($response); 
    return Response::json($r);
});

可通过http://example.com/w/google/queryhere

访问

我也试图使一个以上的请求在javascript和解析json。

$.when( $.ajax(google), $.ajax(bing), $.ajax(yahoo)).then(function(resp1, resp2, resp3)
{ 
    var obj = jQuery.parseJSON(resp1);
});

然而,当使用parseJSON方法时,我得到了一个意想不到的语法令牌。我不知道哪里出错了

首先,$.ajax在检测内容类型时解析自身的JSON响应-您不需要手动执行。

其次,$.when应用于使用多个参数解析的承诺有点模糊。通常,ajax延迟的回调有3个参数:data, textStatus, jqXHR。然而,合并后的承诺将以数组的形式解析它们(每次延迟一个数组)。

所以改成

$.when( $.ajax(google), $.ajax(bing), $.ajax(yahoo)).then(function(resp1, resp2, resp3){ 
    var obj = resp1[0];
});