簡體   English   中英

jQuery json錯誤,當我想從Steam市場獲取json時

[英]jquery json error, when i want to get json from steam market


我對Steam的ajax請求有問題。 我想從蒸汽市場上獲取價格。

function jPrice(httpToJson) {
    $.getJSON(httpToJson, function(data) {
        return data.median_price;
    });
}

當我調用函數

jPrice('http://steamcommunity.com/market/priceoverview/?country=US&currency=1&appid=730&market_hash_name=StatTrak%E2%84%A2%20P250%20%7C%20Steel%20Disruption%20%28Factory%20New%29');

我收到一個錯誤:

XMLHttpRequest無法加載http://steamcommunity.com/market/priceoverview/?country=US&currency=1&appid=730&market_hash_name=StatTrak%E2%84%A2%20P250%20%7C%20Steel%20Disruption%20%28Factory%20New%29 所請求的資源上沒有“ Access-Control-Allow-Origin”標頭。 因此,不允許訪問來源“ http://lоcalhоst:63342”。

我嘗試:

  • 將php標頭Access-Control-Allow-Origin設置為*
  • JSONP

結果->同一件事(錯誤)!

也許有人知道該問題的解決方案?

通過將標頭Access-Control-Allow-Origin設置為*或發送JSONP請求,都將無法通過直接針對steamcommunity.com發出的ajax請求在瀏覽器中獲得結果。

為此,steamcommunity.com應該在響應中添加CORS標頭(您所看到的錯誤消息意味着它們不存在),或將輸出格式化為JSON-P 他們也沒有。

這是瀏覽器的限制,不允許通過ajax加載其他來源的內容。 您需要做的是引入一個中間件,因此讓您的后端服務器對steamcommunity.com發出請求並返回相同的響應,然后對您的服務器進行ajax調用。 這將起作用,您的后端正在發送請求,並且由於它不是瀏覽器請求,因此響應將到達,因為您的ajax調用是針對同一域發出的,所以它也將獲得響應

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM