GitHub:如何为ajax请求设置标头?

Ash*_*mar 3 javascript authentication ajax jquery github

如何为ajax请求设置授权标头以在GitHub帐户上发出请求?

我在GitHub上创建了个人访问令牌,使用它与ajax进行身份验证,以便在我的存储库上执行操作.

ajax请求如下所示:

var apiDomain = 'https://api.github.com',
    api="/users/" + username;
    $.ajax({
        beforeSend: function (xhr) {
            xhr.setRequestHeader ("Authorization", "token 8da3512a16c3fc0d33d8932ca37e6f5bc4c695c0");
        },
        url:apiDomain+api+'?callback=testUser',
        dataType:'script'
    });
Run Code Online (Sandbox Code Playgroud)

我按预期得到了响应数据.但是,ajax调用是未经身份验证的,我总是在meta对象上看到以下内容

X-RateLimit-Limit: "60"
X-RateLimit-Remaining: "55"
X-RateLimit-Reset: "1387964695"
status: 200
Run Code Online (Sandbox Code Playgroud)

如果ajax请求经过身份验证,我应该可以发出~5000个请求.

如何使用我的个人访问令牌在GitHub上发出更多的ajax请求?

Ash*_*mar 6

将access_token作为查询参数传递解决了该问题.

以下是带有查询参数"access_token"的修改版本

var apiDomain = 'https://api.github.com',
    api="/users/" + username;
    $.ajax({
        url:apiDomain+api+'?callback=testUser&access_token=8da3512a16c3fc0d33d8932ca37e6f5bc4c695c0',
        dataType:'script'
    });
Run Code Online (Sandbox Code Playgroud)

PS:问题中的评论帮助我找到了解决方案.谢谢@VonC