【问题标题】:Google Search Console API CredentialsGoogle Search Console API 凭据
【发布时间】:2019-01-23 06:29:16
【问题描述】:

我想通过 ruby​​ 客户端连接到 Google Search Console API。为此需要凭据进行身份验证。

API 调用将经常从 AWS Lambda 函数进行,以访问我自己的 Google 帐户中的数据。

我希望我可以简单地创建一个 Google 服务帐户密钥 - 但是在创建一个时,需要一个角色,并且没有与 Search Console 相关的角色。

我不想使用 OAuth 客户端 ID 凭据,因为该应用没有 UI 界面。

如何进行身份验证?

【问题讨论】:

    标签: ruby google-search-console


    【解决方案1】:

    访问 API 需要一个 OAuth 访问令牌 - 但我真正需要的是一个刷新令牌,因为它们不会过期,并且可用于在每次脚本运行时获取访问令牌。

    您可以使用 Google 的 OAuth Playground 生成令牌。

    1. 创建 Google 应用控制台 - https://console.cloud.google.com/apis/dashboard > 创建应用 > 启用所需的 API > 转到凭据 > 创建凭据 > OAuth 客户端 ID > 其他 > 复制您的凭据
    2. 编辑凭据并添加授权重定向 URI https://developers.google.com/oauthplayground
    3. 转到https://developers.google.com/oauthplayground
    4. 单击设置图标 > 选中“使用您自己的 OAuth 凭据”并从第 1 步设置您的 OAuth 客户端凭据。
    5. 选择所需的范围
    6. 交换令牌的授权码 - 您现在可以获得一个不会过期的刷新令牌!

    如果您不使用“使用您自己的 OAuth 凭据”,您的刷新令牌将在 24 小时后过期。

    【讨论】:

    • 你是英雄。不过,第 2 步对我来说是不同的——我没有看到“复制您的凭据”或添加授权重定向 URI 的选项。在创建新的 OAuth 客户端 ID 时,我没有选择“其他”,而是选择了“Web 应用程序”并出现了重定向 URI 字段。
    • 嗯,我的访问令牌在一个小时左右后过期。你知道如何通过 API 请求一个新的吗?大概使用刷新令牌?
    • 回答了我自己的问题:我必须通过 POST 到 googleapis.com/oauth2/v4/token 获取一个新令牌,并使用以下正文参数:{ client_id, client_secret, refresh_token, grant_type: "refresh_token" }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 2022-08-08
    • 1970-01-01
    相关资源
    最近更新 更多