1

我正在尝试创建一个 ruby​​ 脚本,它将使用来自 google AdWords API 的内容。但是,我无法设置 OAuth 方法。api 文档提到我们需要在 api 控制台中设置 adwords 服务,但那里没有提到 AdWords。我应该为此使用什么 api?

在 adwords_api.yml 中,以下是我使用的一些值:

:oauth_consumer_key: 123456789046-abcd5ef2ghijkl1mno1p2qrstuvwx1y713.apps.googleusercontent.com
:oauth_consumer_secret: AbcDeF1G_HIJK1a13UKz-PAO
# If you manage or store access token manually, you can specify it here.
#:oauth_token: INSERT_OAUTH_TOKEN_HERE
# If you need to change signature method, specify it here.
#:oauth_signature_method: HMAC-SHA1
# Token secret for HMAC-SHA1 method.
#:oauth_token_secret: INSERT_OAUTH_TOKEN_SECRET_HERE

由于我是 OAuth 新手,我遵循的步骤是否正确?

4

1 回答 1

2

在 ruby​​ 中使用 OAuth 的最简单方法之一是使用OmniAuth。他们的 wiki 上有一个很棒的社区维护的 RubyGems 列表。您应该尝试使用 omniauth-google-oauth2 gem。

首先在 google 上设置一个客户 ID。这是一个如何

使用该 gem,我认为您可以在范围内传入 adwords api url。所以你的 config/initializers/omniauth.rb 应该看起来像这样。

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :google_oauth2, CLIENT_ID, CLIENT_SECRET,
    {
        name: "adwords",
        approval_prompt: "",
        scope: "https://adwords.google.com/api/adwords/"
    }
end

然后你可以链接到“/auth/adwords”,这将把用户带到谷歌登录。

于 2013-07-23T20:54:24.393 回答