2016-03-29 8 views
0

Ich möchte einige Spielinformationen auf dem Bildschirm sehen. Ich finde eine api, aber wenn ich es verwenden, sagen:jsonp Uncaught SyntaxError: Unerwartetes Token:

No 'Access-Control-Allow-Origin' header is present on the requested resource.

Auch ich verwende Json p aber es ist ein Fehler ausgegeben:

Uncaught SyntaxError: Unexpected token : 

Mein Code ist unten:

$.ajax({ 
    //crossDomain: 'true', 
    url: 'http://store.steampowered.com/api/appdetails/?appids=730', 
    //url: 'http://api.steampowered.com/ISteamApps/GetAppList/v0001/', 
    //url:'http://store.steampowered.com/api/appdetails/?appids=730', 
    //url:'games.json', 
    type: 'get', 
    dataType:'jsonp', 
    //dataType:'json', 
    //data = JSON.parse(data); 
    crossDomain : true, 
    success:function(data){ 
     console.log(data); 
    }, 
    error:function(data){ 
     console.log("Hata ",data); 
    } 
}); 

Ich benutze anyorigin.com aber es ist nicht funktionieren. Wenn ich lokale .json Datei benutze, brauche ich aber Dampf.

Antwort

0

Ich glaube nicht, dass die URL in Ihrem Beispiel JSONP unterstützt. Ich sehe diese Art von JSON-Antwort:

{ 
    "key": "value" 
} 

Und für JSONP muss es sein:

callback({ key: value }) 

Es könnte einige Verwirrung hier über das, was JSONP ist. JSONP erfordert, dass die API rohes Javascript bereitstellt. Nicht nur das, der Server muss einen insbesondere Funktionsaufruf in diesem Javascript liefern. JSONP ist eine Hack-Cross-Source-Richtlinie.

edit: Als Lösung würde ich vorschlagen, dass Sie den JSON durch Ihre eigene serverseitige Anwendung Proxy.