繁体   English   中英

jQuery JSON AJAX请求到其他域

[英]jQuery JSON AJAX Request to different domain

我正在尝试向https://api.mojang.com/users/profiles/minecraft/USERNAME发出AJAX请求,这应该返回JSON数据(不确定JSONP)

当我单击将执行AJAX请求的按钮时,我得到了:

http://prntscr.com/8xswr1(Google Chrome控制台)

当我双击“ dude1?callback ...”时,我得到以下信息:

http://prntscr.com/8xsx7q

其中包含我要返回的JSON数据,这意味着我正在发出请求并获取JSON数据,但是我无法解析它或获取信息

码:

<!DOCTYPE html>
<html>
    <head>
        <title>Website</title>
        <script src="https://code.jquery.com/jquery-2.1.4.js"></script>
        <script>
            function getInfo() {
                username = $('#username').val();
                $.ajax({
                    type: 'GET',
                    url: "https://api.mojang.com/users/profiles/minecraft/" + username,
                    //crossDomain: true,
                    dataType: 'jsonp',
                    success: function (data) {
                        alert(data.name);
                    }
                });
            }
        </script>
    </head>
    <body>
        <form>
            Username: <input type="text" id="username" name="username"/>
        </form>
        <button onclick="getInfo();">Submit</button>
        <span id="info">

        </span>
    </body>
</html>

另外,如果我将'dataType'参数更改为'json',则会收到此错误http://prntscr.com/8xsy9e

这应该返回JSON数据(不确定JSONP)

是JSON。

当我单击将执行AJAX请求的按钮时,我得到了

这是尝试像执行JSONP一样执行JSON的典型错误。

当我双击“ dude1?callback ...”时,我得到了

是的,JSON。 不是JSONP。

另外,如果我将“ dataType”参数更改为“ json”,则会收到此错误

是的,您要从中请求数据的网站没有授予您的网站使用访问者的浏览器进行读取的权限。


跨域Ajax要求您从中获取数据的站点与您合作以提供数据。

而是使用服务器获取数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM