我尝试获取JSONP的数据,但在调用该函数时会返回语法错误。我对这个话题很陌生,不明白为什么。可能是因为我没有理解JSONP请求的所有内容。如果有人可以帮助我,那就太好了。
执行代码:
$.ajax({
url: "https://backpack.tf/api/IGetMarketPrices/v1?format=json&callback=JSONP&key=XXX&appid=730",
dataType: "jsonp",
data: {format: "json"},
type: "GET",
jsonp: "response",
jsonpCallback: "response",
success: function( response ) {
console.log( response ); // server response
}
});
(我必须审查我的API密钥。)
错误:Uncaught SyntaxError: Unexpected token :
回复是:
{"response":{"success":1,"current_time":1486000891,"items":{"AK-47 | Aquamarine Revenge (Battle-Scarred)":{"last_updated":1485997229,"quantity":80,"value":1092},...
第一个:由Chrome强调。
Here是API文档。
答案 0 :(得分:1)
从试验和错误 - 令人印象深刻,因为我没有API密钥
ChatSession {Reply}
或
$.ajax({
url: "https://backpack.tf/api/IGetMarketPrices/v1?format=jsonp&key=XXX&appid=730",
dataType: "jsonp",
type: "GET",
success: function( response ) {
console.log( response ); // server response
}
});
要解释... jQuery会自动在jsonp请求中添加一个名为$.ajax({
url: "https://backpack.tf/api/IGetMarketPrices/v1",
dataType: "jsonp",
type: "GET",
data: {
format: 'jsonp',
key: 'XXX',
appid: 730
},
success: function( response ) {
console.log( response ); // server response
}
});
的查询参数...因为API声明您需要在名为callback
的参数中定义回调名称,您可以让jQuery使用默认值callback
然后,jQuery创建一个具有长随机名称的函数,并将callback
参数的值设置为该函数 - 因此您不必担心callback
或{ {1}}参数 - 默认值很好
我必须遗漏一些基本的东西,因为这应该有效!