我需要帮助。我尝试从Google Api V3,Auth2捕获所有contacs,但它返回此错误:
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))
}
})
});
}
这是正确的方法吗?
谢谢
将access_token作为请求参数附加到 url 中,并在授权后获取令牌,而不是将其发送到数据。
鉴于 goolge.com 的 CORS 限制,您无法执行 hxr (ajax) 请求。
不过,您可以使用此库来实现此目的。它解决了Oauth登录/从gmail检索联系人)
http://eventioz.github.io/gcontacts/