Google access_token 未定义
Google access_token is undefined
我正在开发一个移动网络应用程序,它将访问 Google 图书 API 并允许用户将图书添加到他们的 "favorites" 书架。这是我第一次使用需要 Google 授权的 API。
我需要发送授权请求来修改私人用户数据。我(认为)我有合适的 access_token 但我不知道如何得到它。
我正在使用 Google 登录按钮,如下所示:
` <div class="g-signin2" data-onsuccess="onSignIn"></div> `
我也有这个来识别我的申请Google:
`<meta name="google-signin-client_id" content="12345.apps.googleusercontent.com"> `
我使用自己的 Google 帐户登录,Google 按钮变为 "Signed In." 我只是想从那里记录访问令牌:
` function onSignIn(googleUser) {
googly = gapi.auth2.getAuthInstance();
var id_token = googly.currentUser.get().getAuthResponse().access_token;
console.log(id_token);
} `
我已经尝试了我能在文档中找到的所有内容,但无论我做什么,我都会返回 access_token 未定义。
我怀疑我实际上没有访问令牌,但我不知道如何测试它。
找到 access_token 的正确方法是什么?一旦我有了它,我该如何将它发送到 API?
尝试在 API Client Library 中使用 gapi.auth
而不是识别平台中的 gapi.auth2
。您应该会发现 gapi.auth.getToken().access_token
包含您需要的访问令牌。
也就是说,我认为这是一个错误。如果你 alert(JSON.stringify(googleUser))
我怀疑你会发现那里有一个 access_token
字段,但 getAuthResponse()
不包含它,即使 docs 建议应该有一.
如果有人能确认我理解正确并报告,那就太好了。
如果您在请求 header 中将 response_type 作为 'token' 包含,它将 return access_token 与 currentUser
太晚了,但如果您将 true 参数传递给 getAuthResponse "getAuthResponse(true)" 它 returns access_token.
我正在开发一个移动网络应用程序,它将访问 Google 图书 API 并允许用户将图书添加到他们的 "favorites" 书架。这是我第一次使用需要 Google 授权的 API。
我需要发送授权请求来修改私人用户数据。我(认为)我有合适的 access_token 但我不知道如何得到它。
我正在使用 Google 登录按钮,如下所示:
` <div class="g-signin2" data-onsuccess="onSignIn"></div> `
我也有这个来识别我的申请Google:
`<meta name="google-signin-client_id" content="12345.apps.googleusercontent.com"> `
我使用自己的 Google 帐户登录,Google 按钮变为 "Signed In." 我只是想从那里记录访问令牌:
` function onSignIn(googleUser) {
googly = gapi.auth2.getAuthInstance();
var id_token = googly.currentUser.get().getAuthResponse().access_token;
console.log(id_token);
} `
我已经尝试了我能在文档中找到的所有内容,但无论我做什么,我都会返回 access_token 未定义。
我怀疑我实际上没有访问令牌,但我不知道如何测试它。
找到 access_token 的正确方法是什么?一旦我有了它,我该如何将它发送到 API?
尝试在 API Client Library 中使用 gapi.auth
而不是识别平台中的 gapi.auth2
。您应该会发现 gapi.auth.getToken().access_token
包含您需要的访问令牌。
也就是说,我认为这是一个错误。如果你 alert(JSON.stringify(googleUser))
我怀疑你会发现那里有一个 access_token
字段,但 getAuthResponse()
不包含它,即使 docs 建议应该有一.
如果有人能确认我理解正确并报告,那就太好了。
如果您在请求 header 中将 response_type 作为 'token' 包含,它将 return access_token 与 currentUser
太晚了,但如果您将 true 参数传递给 getAuthResponse "getAuthResponse(true)" 它 returns access_token.