как авторизоваться с помощью google-api-ruby-client - PullRequest
6 голосов
/ 21 сентября 2011

я использую google api для ruby, но не знаю, с чего начать, просто приведите мне пример ABC, большое спасибо?

Ответы [ 2 ]

11 голосов
/ 21 июня 2012

Если вы создаете приложение учетной записи службы для доступа к Google Analytics.

  1. Зарегистрируйте его в Google с помощью https://code.google.com/apis/console. На вкладке доступа к API нажмите «Создать идентификатор клиента», выберите учетную запись службы.Сохраните файл ключа, который сгенерирует Google, и запомните пароль для этого ключа.
  2. Вот код, с которого можно начать

    require 'rubygems'
    require 'google/api_client'
    
    api_client = Google::APIClient.new
    path_to_key_file ="/path/to/key/file-privatekey.p12"
    passphrase = "google_generated_password"
    key = Google::APIClient::PKCS12.load_key(path_to_key_file, passphrase)
    

Однаждыключ доступен, инициализируйте asserter с вашим идентификатором клиента (электронная почта в консоли API) и областями авторизации.

asserter = Google::APIClient::JWTAsserter.new(
   'super_long_client_id_from_api_console@developer.gserviceaccount.com',
   'https://www.googleapis.com/auth/analytics.readonly',
   key)

# To request an access token, call authorize:
api_client.authorization = asserter.authorize()
puts api_client.authorization.access_token

http://code.google.com/p/google-api-ruby-client/wiki/ServiceAccounts

0 голосов
/ 14 июля 2012

Я ответил на что-то похожее в нескольких других постах, которые я обнаружил, которые были похожи на этот ... так что в случае его, для ruby, используйте google-api-client (для любого из API Google), естьнесколько входов и выходов с аутентификацией при использовании API-ключа в отличие от OAuth ...

Я описал этот процесс (используя серверную часть API-ключа) на кодовый код .

Вы должны явно установить параметр авторизации равным nil при создании клиента, иначе гем попытается использовать OAuth для аутентификации, поэтому, если вы звоните с сервера, использующего только ключ API, вы всегда получите 401 Unauthorized,

кодовая обитель - google-api-client для ruby ​​

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...