2011-05-27 38 views
4

以任何理由不工作解析谷歌的地方使用Javascript

var request = "https://maps.googleapis.com/maps/api/place/search/json?"; 
request = request + "location="+lat+","+lng+"&"; 
request = request + "radius=500&"; 
request = request + "types=&"; 
request = request + "name=&"; 
request = request + "sensor=false&"; 
request = request + "key="+key; 

$.getJSON(request, function(data){ alert(data); }); 

的字符串是有效的,我得到的結果,如果我只是加載它在瀏覽器中。你看到這裏有什麼不對嗎?

編輯:好的,問題解決了。 Google Places API實際上不接受ajax jsonp調用。我將不得不使用他們的JavaScript API。看到這個線程的詳細信息:

How do I use Google Places to get an array of Place names?


感謝您的答覆。因此,我現在使用以下代碼進行API調用:

$.ajax({ 
    url: "https://maps.googleapis.com/maps/api/place/search/json", 
    dataType: 'jsonp', 
    data: { 
     location:lat+","+lng, 
     radius:500, 
     types:"", 
     name:"", 
     sensor:"false", 
     key:key 
    }, 
    success: function(data) { 
     alert(data); 
    } 
}); 

Whiich不顯示任何警報框。通過檢查碼,我趕的錯誤消息:

"html_attributions" : [], 
    json:2Uncaught SyntaxError: Unexpected Token : 

「的結果」:[ {

然而,以下此錯誤信息,在控制檯中,所請求的數據實際顯示中的「結果」領域...任何想法?

+1

這需要更多的上下文;這個代碼在哪裏執行,以及在哪裏定義了'lat','lng'和'key'? – 2011-05-27 17:16:19

+0

您是否在控制檯中收到特定的錯誤消息? – 2011-05-27 17:28:25

+0

http://en.wikipedia.org/wiki/Same_origin_policy – 2011-05-27 17:28:34

回答

1

Google Places API不支持JSONP請求。

+0

很高興知道,但參考將是美好的更多信息。 – 2013-03-11 15:42:00

+0

@agrothe您不能證明參考文獻中缺少某些東西,例如上帝。 – bjornd 2013-03-11 16:09:06