javascript - 怎样通过$.ajax跨域请求斗鱼TV API 取得json数据
大家讲道理
大家讲道理 2017-04-11 11:28:21
0
11
1465

通过$.ajax跨域请求 chrome提示 Uncaught SyntaxError: Unexpected token

这是我失败的代码

    $.ajax({
        type: "get",
        url: "http://open.douyucdn.cn/api/RoomApi/live/lol",
        dataType: "jsonp",
        jsonp: "callback",
        jsonpCallback: "data",
        success: function(response) {
            console.log(response);
        }
    });

斗鱼TV API文档

我去google后,了解到返回的数据是json格式,但我如果将dataType的value改成json后,又会出现跨域问题。
这期间我尝试使用script直接调用该链接,但还是同样的问题,
贴出失败的代码:

var url = "http://open.douyucdn.cn/api/RoomApi/live/lol";
    var script = document.createElement("script");
    script.setAttribute("src", url);
    document.getElementsByTagName("head")[0].appendChild(script);

我觉得我的问题应该归纳为:如何使用javascript在跨域条件下调用json格式数据?
希望大家能指导我一下,谢谢!


这个问题来源于freecodecamp上的一个小题目,
题目地址
我只是将其中的twitch API改为斗鱼API

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(11)
黄舟

jsonp本来就是不安全的请求,一般服务器是不允许这样操作的。只有自家调自己的才想想要不要放。
你还是自己用http请求吧

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板