OAuth端点的http客户端

时间:2016-07-14 20:04:07

标签: javascript oauth gitlab

我正在尝试从GitLab CE端点获取OAuth的OAuth访问令牌。我在JS中获得了良好的代码参数,但是当我向访问令牌页面发出Ajax请求时,它会抛出有关服务器未启用CORS的错误,并且不允许使用origin null。为什么我的出身无效?我还查看了gitlab文档,它说你必须使用http客户端,然后它会显示RestClient的示例。这是什么?我尝试过使用它但不起作用。请参阅下面的代码:

if (getQueryVariable('code') === false) {
            if (local !== false) {
                window.location.replace('https://gitlab.com/oauth/authorize?client_id=####&redirect_uri=http://localhost:4000&response_type=code');
            } else { //live
                window.location.replace('https://gitlab.com/oauth/authorize?client_id=####&redirect_uri=http://roconnor.gitlab.io/repoViewer&response_type=code');
            }

        } else {

            var oauthcode;

            if (local !== false) {
                oauthcode = $.getJSON('http://gitlab.com/oauth/token?client_id=####&client_secret=####&code=' + getQueryVariable('code') + '&grant_type=AUTHORIZATION_CODE&redirect_uri=http://localhost:4000');

                var parameters = 'client_id=####&client_secret=####&code=' + getQueryVariable('code') + '&grant_type=AUTHORIZATION_CODE&redirect_uri=http://localhost:4000'
                RestClient.post 'http://gitlab.com/oauth/token', parameters //this is the code given by the docs
            } else {
                oauthcode = $.getJSON('http://gitlab.com/oauth/token?client_id=####&client_secret=####&code=' + getQueryVariable('code') + '&grant_type=AUTHORIZATION_CODE&redirect_uri=http://roconnor.gitlab.io/repoViewer');
            }


            console.log(oauthcode); //the error gets thrown here

0 个答案:

没有答案