java - 在谷歌开发者控制台上注册网络应用程序

标签 java api gmail google-oauth

这是注册步骤,我对步骤3、4、5有疑问:

  1. 创建应用程序时,您可以使用 Google Developers Console 进行注册。然后,Google 会提供您稍后需要的信息,例如客户端 ID 和客户端 key 。
  2. 在 Google Developers Console 中激活 Google Calendar API。 (如果开发者控制台中未列出该 API,请跳过此步骤。)
  3. 当您的应用需要访问用户数据时,它会向 Google 请求特定的访问范围。
  4. Google 向用户显示同意屏幕,要求他们授权您的应用请求他们的部分数据。
  5. 如果用户批准,Google 就会为您的应用提供一个短期访问 token 。
  6. 您的应用请求用户数据,并将访问 token 附加到请求中。
  7. 如果 Google 确定您的请求和 token 有效,则会返回请求的数据。

完成基本注册后,我获得了客户端 ID、 key 并给出了重定向 URI。截至目前详情:

{
  "web": {
    "auth_uri": "https://accounts.google.com/o/oauth2/auth",
    "client_secret": "bnltOn4nljP-d4AwgWHleEuV",
    "token_uri": "https://accounts.google.com/o/oauth2/token",
    "client_email": "588495213967-rhg8i6lmcc0eqq34fuk97lkj36agog3v@developer.gserviceaccount.com",
    "redirect_uris": [
      "http://static.enggheads.in/gmail"
    ],
    "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/588495213967-rhg8i6lmcc0eqq34fuk97lkj36agog3v@developer.gserviceaccount.com",
    "client_id": "588495213967-rhg8i6lmcc0eqq34fuk97lkj36agog3v.apps.googleusercontent.com",
    "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
    "javascript_origins": [
      "https://static.enggheads.in"
    ]
  }
}

我点击一个按钮,我已到达验证页面,其中询问“管理您的联系人”,即我想要用户联系人的范围。

但我不知道从哪里以及如何实际获取访问 token 。

最佳答案

在您同意所请求的“管理您的联系人”范围后,您将被重定向到您的应用程序,并显示 codehttp://static.enggheads.in/gmail?code=<code> 。您可以调用code值并在 Google 的 token 端点将其交换为访问 token 。 Google 文档对此进行了全部描述:https://developers.google.com/accounts/docs/OAuth2WebServer

关于java - 在谷歌开发者控制台上注册网络应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28337532/

相关文章:

php - Facebook : "This authorization code has been used.","type":"OAuthException","code":100

ios - Xcode - Gmail 用于从左向右滑动到下一个上一个邮件项目的过渡是什么

java - java中的继承和泛型

java - 尝试连接到 Wildfly 10.1 上的 EJB 并获取 : Session id hasn't been set for stateful component

java - 如何将图形添加到 GridBagLayout

node.js - Nodemailer 与 Gmail 发生环回错误 - 对象 #<Object> 没有方法 'getToken'

ruby - 追溯 Ruby Gmail Gem 方法的源头

java - 将 java.security.policy 属性设置为跨平台文件路径

php - PHP REST API 如何接收 PUTted 数据?

python - 币安 API : how to get the USD as the quote asset