2014-09-25 56 views
0

我想從代碼波紋管的JSON獲取時間數據,但我得到一個錯誤,而不是數據,會發生什麼?獲取JSON數據的錯誤

$.ajax({ 
    type: "POST", 
    url: "http://www.previsaodotempo.org/api.php?city=Rio+De+Janeiro", 
    success: function(data) { 
     alert() 
     data.location; 
     $("div").html(data); 
    }, 
    error: function(data) { 
     $("div").html('can not get the json'); 
    } 
}); 

這裏是一個小提琴:http://jsfiddle.net/jodgjqwf/

+4

打開控制檯! '否'Access-Control-Allow-Origin'標題出現在請求的資源上.' – tymeJV 2014-09-25 19:49:01

+0

由於跨域請求而產生的 – 2014-09-25 19:50:44

+1

「我收到一個錯誤」 - 它通常會幫助您如果(a)在詢問時與我們分享錯誤(b)谷歌它首先 – Quentin 2014-09-25 19:50:55

回答

-1

http://www.previsaodotempo.org/api.php?city=Rio+De+Janeiro期待您張貼了嗎?我只是打了網址,它返回給我的JSON。

將「POST」更改爲「GET」。

$.ajax({ 
    type: "GET", 
    url: "http://www.previsaodotempo.org/api.php?city=Rio+De+Janeiro", 
    success: function(data) { 
     $("div").html(data); 
    }, 
    error: function(data) { 
     $("div").html('can not get the json'); 
    } 
}); 
+1

即使使用GET或POST,除非用戶在同一個域中,或者服務器使用CORS,由於跨域限制,請求將失敗 – 2014-09-25 19:54:24

+0

@PatrickEvans這是真的。我相信他們可能是從自己的領域提出請求。我可能是錯的,但我確定他們沒有使用jsfiddle進行生產;) – teewuane 2014-09-25 19:58:04

+1

http://jsfiddle.net/jodgjqwf/1/ - 該更改無法解決它。 – Quentin 2014-09-25 19:58:03