尝试使用google api v3:ERROR捕获所有联系人

时间:2013-09-18 09:38:40

标签: javascript google-api google-contacts

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

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))
            }
        })
    });
}

这是正确的方法吗?

谢谢

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

根据goolge.com的CORS限制,你不能做hxr(ajax)请求。

您可以使用此库来实现此目的。它解决了来自gmail的Oauth登录/检索联系人的问题)

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