大家晚上好
我正在尝试通过魔兽世界社区 API 检索 JSON 数据。我有一个正常运行的程序,可以从以下代码片段中的 URL 检索所有数据,并且它实际上会提醒我的 Angular 色名称。
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Wreckedified Raiding</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script>
$(document).ready(function(){
$.ajax({
"url":"http://us.battle.net/api/wow/character/aerie-peak/Eldershield?jsonp=myCallback",
"type":"GET",
"dataType":"jsonp",
"contentType":"application/json",
"jsonpCallback":"myCallback",
"success":function(data){
console.log(data);
alert(data.name);
}
})
alert("Hello World!");
});
</script>
</head>
但是,我真正想要的数据是 JSON 格式,位于以下 URL:
http://us.battle.net/api/wow/character/aerie-peak/Eldershield?fields=items
我的问题是:当我还需要附加 ?jsonp=myCallback 时,我应该如何在 Ajax 调用中格式化此 URL?
我想要在该链接上找到诸如“averageItemLevel”:562 之类的信息,但无法使用以下 URL:
"url":"http://us.battle.net/api/wow/character/aerie-peak/Eldershield?fields=items?jsonp=myCallback"
我确信有一个简单的解决方案,涉及 URL 中的 ? 或其他内容,但我尝试了几种变体,但显然遗漏了一些内容。
感谢大家的宝贵时间,并提前感谢您提供的帮助。
最佳答案
使用data
选项指定AJAX调用中的参数。 jQuery 会将它们正确添加到 URL 中。
$.ajax({
"url":"http://us.battle.net/api/wow/character/aerie-peak/Eldershield?jsonp=myCallback",
"type":"GET",
"data": { fields: "items" },
"dataType":"jsonp",
"contentType":"application/json",
"jsonpCallback":"myCallback",
"success":function(data){
console.log(data);
alert(data.name);
}
})
如果你想自己做,URL应该是:
http://us.battle.net/api/wow/character/aerie-peak/Eldershield?fields=items&jsonp=myCallback
?
用于分隔参数与脚本名称,&
用于分隔各个参数。
关于javascript - JSON 数据和 Ajax 调用的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21298830/