javascript - JSON 数据和 Ajax 调用的 URL

标签 javascript ajax api jsonp

大家晚上好

我正在尝试通过魔兽世界社区 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/

相关文章:

sql-server - 如何从 ASP.NET Core Entity Framework 中的数据库更新 VS 2019 中的模型

python - 如何在 python 中为 docxtpl jinja2 标签使用嵌套的字典列表

javascript - 无法正确刷新监视 <body> 元素的 Bootstrap scrollspy

javascript - 如何使用Ajax从asp.net Core2.2中的子模型获取值

javascript - 仅通过电子表格最后一行运行 Google 脚本?

javascript - 在 google.visualization.data.group 中包含字符串列

php - 通过 Jquery 将多个上传发送到 PHP

c++ - Xerces-C:从 v2.x 迁移到 v3.x?

javascript - 滚动固定标题不显示在移动设备上

JavaScript:如何仅将颜色更改为输入字段中的部分字符串?