我正在Google上进行操作,以查看登录用户的详细联系信息。我已经获取了身份提供者的访问令牌。 使用此访问令牌发出GET请求时,出现错误
您的应用程序已使用people.googleapis.com不支持的来自Google Cloud SDK或Google Cloud Shell的最终用户凭据进行了身份验证。我们建议在gcloud中配置billing / quota_project设置,或通过auth / impersonate_service_account设置使用服务帐户。有关服务帐户以及如何在应用程序中使用它们的更多信息,请参阅https://cloud.google.com/docs/authentication/
因此,我启用/创建了一个激活的服务帐户。但是现在当我尝试向GET请求 https://people.googleapis.com/v1/people/me?access_token={{token}} 我收到以下错误:
{
"error": {
"code": 401,
"message": "Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.",
"status": "UNAUTHENTICATED"
}
}
代码:
app.intent("sendgc_input",(conv)=>{
name = `${conv.input.raw}`,
console.log(name);
const options = {
method : 'GET',
url : 'https://people.googleapis.com/v1/people/me?access_token=ya29.a0AfH6SMCXFju5HUe4qHSsKiVJ1tRkzJ3prL7Fe8qqGKHuJCSWYvXaekdEBRTjAZsc1-xbFrlP6W7r7VLtL2KLm3C6UogsX-6peHtv2cPRhvcFV9AB1utoEQcoX2v08eQpx_fNplogeqdzRJyhP6egJTVAfkboEmgUzOQ',
json : true
}
var data=[];
return rp(options)
.then(function(parseBody){
var x = parseBody.email;
console.log(x)
data.push(parseBody.email);
var str = 'A gift card will be sent to' + name + 'on email' + data[0];
console.log(data);
return conv.ask(str);
})
.catch(err=>{
console.log(err);
conv.ask('error');
})
});
我还使用当前项目对我的帐户进行了 gcloud auth应用程序默认登录。
我不明白怎么了。