【问题标题】:403 Forbidden using REST403 禁止使用 REST
【发布时间】:2015-12-04 11:01:29
【问题描述】:

我正在为一项学校作业创建这个应用程序,它可以让你在手机上查看 Planetside 2 的统计数据。我正在英特尔 XDK 中开发它,主要使用带有 Jquery 的 javascript。

问题是,到目前为止,我的代码出现了 Forbidden 403 错误。它基本上不允许我访问数据。我查找了一些关于 Iam 从客户端向服务器跨域请求数据的事实。浏览器会自动阻止它,我看到一些帖子使用几行 PHP 代码解决了这个问题。但是我不能为这个项目使用 PHP 代码。有没有其他方法可以仅使用 Javascript 来解决这个跨域问题?

这是我目前的代码,此方法适用于 Twitch API,并且不会在我的浏览器控制台中出现 403 Forbidden 错误。

<!DOCTYPE HTML>
<head>
    <meta charset="UTF-1">
</head>
<body>
    <div id="played"></div>
    <script src="https://code.jquery.com/jquery-2.1.4.js"></script>
<script>
    $.ajax({
        url: 'https://census.daybreakgames.com/s:mark/get/ps2:v2/character/?name.first_lower=hawkleaf',
        type: "GET",
        data: '',
        dataType: 'json',
        crossDomain:true,
        succes: function (data) {
             alert( "success" );
            $('#played').html(data['character_list'])
                }   
        }) 
        .done(function() {
            alert( "blah" );
        })
        .fail(function() {
            alert( "error" );
        })
        .always(function() {
            alert( "complete" );
        });
    //setTimeout(displayData, 1000);
$(document).ready(function(){
    displayData();
});
</script>
</body>
</html>

【问题讨论】:

  • 用户代理发送了有效的凭据,但没有访问权限
  • 你还有一个关于成功的错字(缺少最后一个 s)。如果您将数据类型切换到 jsonp 并纠正错字,它将正常工作。

标签: javascript php


【解决方案1】:

我知道这是很久以前的事了,但我觉得即使过了这么长时间我也应该发布答案。正如 Benjamin Bau 提到的,我在代码的 Success 部分打错了字。这实际上导致了好几个星期没有让它工作......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-21
    • 1970-01-01
    • 2015-07-24
    • 2019-03-19
    • 1970-01-01
    相关资源
    最近更新 更多