2013-01-10 31 views
0

這裏得到外部URL JSON是我的代碼無法使用jQuery

 $.ajax({ 
    type:"GET", 
    url: "http://fantasy.premierleague.com/web/api/elements/100/", 
    success: function(data) { 
      alert(JSON.stringify(data)); 
     }, 
    error: function(jqXHR, textStatus, errorThrown) { 
      alert(jqXHR.status); 
     }, 
    dataType: "json" 
}); 

但是當我運行它我得到和error.The jqXHR.status is 0,textStatus是Error和errorThrown是No Transport

+0

[HTTP訪問控制(CORS)](https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS) – bfavaretto

回答

1

這是不可能,因爲您正在嘗試進行跨域請求。

您可能想查看JSONP作爲解決方案。

看看這個http://remysharp.com/2007/10/08/what-is-jsonp/

+0

如何做到與 – iJade

+0

更新鏈接 –

+0

的答案,但要使用jsonp我需要修改外部網站的JSON輸出太儀式?但我沒有控制外部網站 – iJade

2

您可以嘗試使用雅虎YQL的JSONP代理。 http://developer.yahoo.com/yql/

$.getJSON("http://query.yahooapis.com/v1/public/yql", { 
    q: "select * from json where url=\"http://fantasy.premierleague.com/web/api/elements/100/\"", 
    format: "json" 
}, 

function (data) { 
    console.log(data.query.results.json.transfers_out); 
}); 

http://jsfiddle.net/zZy77/