0
$.ajax({
    beforeSend: function (request)
    {
        request.setRequestHeader('Authorization', 'Bearer '+ TOKEN);
        //request.setRequestHeader('Authorization', TOKEN);
        //request.setRequestHeader('X-JavaScript-User-Agent', 'Google APIs Explorer');
    },
    url: 'https://www.googleapis.com/plus/v1/people/me/people/visible?key='+ API_KEY,
    //url: 'https://www.googleapis.com/plus/v1/people/me/people/visible',
    //url: 'https://www.googleapis.com/plus/v1/people/'+ UID +'/people/visible',
    //url: 'https://www.googleapis.com/plus/v1/people/'+ UID +'/people/visible?key='+ API_KEY,
    data: null,
    dataType: 'jsonp',
    success: function(result){
      console.log(result);
    }
});

遊び場では 200 OK で、plus.people.listはうまく機能していますが、コードに関しては次のようになります。

Object {domain: "usageLimits", reason: "accessNotConfigured", message: "Access Not Configured"}


更新 1: https://developers.google.com/console/help/?hl=ru#UsingKeys によると、承認する必要があるのは access_token だけなので、すべての APP_KEY を削除し、@SLaks によると、JSONP を使用してリクエスト ヘッダーを設定できません。代わりに、クエリ文字列にベアラー トークンを渡しましたが、何も変わっていません。同じ問題です。とにかく、助けてくれてありがとう。

$.ajax({
    //url: 'https://www.googleapis.com/plus/v1/people/me/people/visible?access_token='+ TOKEN,
    //url: 'https://www.googleapis.com/plus/v1/people/me/people/visible?access_token='+ encodeURIComponent(TOKEN),
    //url: 'https://www.googleapis.com/plus/v1/people/me/people/visible?token_type=Bearer&access_token='+ TOKEN,
    //url: 'https://www.googleapis.com/plus/v1/people/me/people/visible?token_type=Bearer&access_token='+ encodeURIComponent(TOKEN),
    //url: 'https://www.googleapis.com/plus/v1/people/'+ UID +'/people/visible?access_token='+ TOKEN,
    //url: 'https://www.googleapis.com/plus/v1/people/'+ UID +'/people/visible?access_token='+ encodeURIComponent(TOKEN),
    //url: 'https://www.googleapis.com/plus/v1/people/'+ UID +'/people/visible?token_type=Bearer&access_token='+ TOKEN,
    //url: 'https://www.googleapis.com/plus/v1/people/'+ UID +'/people/visible?token_type=Bearer&access_token='+ encodeURIComponent(TOKEN),
    data: null,
    dataType: 'jsonp',
    success: function(resp){console.log(resp);}
});


修繕! Google apis コンソールの問題をいくつか変更した後、問題が修正され、気が遠くなりました。私がしなければならなかったのは、サービスで Google+ API を有効にし、API アクセスでドメインを通知エンドポイントに追加することだけでした (2 番目が役に立ったとは思わないでください。とにかく、今は機能しています!)。

4

1 に答える 1

1

JSONP を使用してリクエスト ヘッダーを設定することはできません。

代わりに、クエリ文字列でベアラー トークンを渡す必要があります。"&access_token=" + encodeURIComponent(token)

于 2013-06-19T15:03:42.200 に答える