0

我需要帮助。我尝试从 Google Api V3、Auth2 中捕获所有联系人,但它返回此错误:

GET https://www.google.com/m8/feeds/contacts/default/full?callback=jQuery171029…+gsession&issued_at=1379496709&expires_at=1379500309&_aa=0&_=1379496719602 401
(Token invalid - AuthSub token has wrong scope)

首先我登录 Google +,然后我尝试在 Google 通讯录中进行授权:

function myContacts() {
    var config = {
        'client_id': clientId,
        'scope': 'https://www.google.com/m8/feeds',
    };

    gapi.auth.authorize(config, function () {
        var authParams = gapi.auth.getToken(); // from Google oAuth
        $.ajax({
            url: 'https://www.google.com/m8/feeds/contacts/default/full',
            dataType: 'jsonp',
            type: "GET",
            data: authParams,
            success: function (data) {
                alert("success: " + JSON.stringify(data))
            },
            error: function (data) {
                console.log("error: " + JSON.stringify(data))
            }
        })
    });
}

这是正确的方法吗?

谢谢

4

2 回答 2

0

鉴于 goolge.com 的 CORS 限制,您无法执行 hxr (ajax) 请求。

你可以使用这个库来实现这一点。它解决了 Oauth 登录/从 gmail 检索联系人)

http://eventioz.github.io/gcontacts/

于 2014-11-16T20:07:00.480 回答
0

将 access_token 作为请求参数附加到 url 中,并在授权后获取令牌,而不是将其发送到数据。

于 2013-11-04T07:12:01.573 回答