2015-10-05 78 views
0

我試圖讓使用JSON 從外部API使用XMLHttpRequest

的API URL是這樣

http://60.62.62.62:8586/api/village/197571446817 

而且數據是這樣的一個API的一些數據JSON API錯誤:

{ 
"userId": 197571446817, 
"currentHomeId": 197571446817, 
"clanId": 15489654523, 
"clanName": "vlsn_nsmr", 
"clanBadge": 1744850005, 
"clanRole": "title", 
"clanWar": 7, 
"numberLogin": 0, 
"secondsLogin": 0, 
"league": "CRYSTAL_III", 
"townHallLevel": 9, 
"userName": "somename", 
"level": 114, 
"XP": 5516, 
"gems": -234935969, 
"freeGems": 0, 
"attackRating": -721481846, 
"attackKFactor": -1987233268, 
"trophies": 1925, 
"attackWinCount": 308, 
"attackLoseCount": -1998035130, 
"defenseWinCount": 3, 
"defenseLoseCount": -840248882, 
"nameChosenByUser": true, 
"nameChanged": 0, 
"villageImg": "", 
"boughtGems": -1906210374 
} 

到目前爲止好。但後來我嘗試使用的getJSON得到一些值:

$.getJSON('http://62.4.23.229:8338/api/village/197571446817', function(data) { 
    console.log(data.userName) 
} 

而且我得到這個:

的XMLHttpRequest無法加載URL沒有「訪問控制允許來源」標頭出現在所請求的資源Origin

我試過使用jsonp,但沒有運氣似乎這個API不喜歡回調。有誰知道我如何從該API獲取該信息?

+2

的可能的複製[XMLHttpRequest的不能加載與jQuery一個URL](http://stackoverflow.com/questions/3828982/xmlhttprequest-cannot-load-an-url-with-jquery) –

回答

1

錯誤消息Access-Control-Allow-Origin表示API在Header中有安全約束。您需要聯繫您的api提供商以獲取更多詳細信息。

1

你正在做一個XMLHttpRequest到一個域是diffent是在您的網頁上。因此,瀏覽器會阻止它,因爲出於安全原因,它通常允許同一來源的請求。
可能的解決方案: - How can I achieve this by using CORS.
啓用CORS是增加必要的標頭(如訪問控制允許來源)到服務器的響應
我也建議檢查,如果它只是一個錯字目標的最簡單方法域。

+0

它不是一個錯字LOL我編輯開發人員希望該API噓噓的IP,但那種在那邊沒有多大幫助的安靜在那裏,我將採取CORS鏈接 – WarLion

+0

一看@WarLion清楚這是在我的一個項目的情況下..涼爽的希望CORS鏈接可以幫助你.. –