いつもお世話になっております。
この度は、ご閲覧いただきありがとうございます。
Google APIのAnalyticsと連携して、認証したユーザーが指定したサイトのPVを取得したいと考えています。連携をして、アカウントを選ぶところまではできているのですが、認証すると下記のようなエラーが出てしまいます。
Google側の設定では、「People API」、「Google+ API」、「Analytics Reporting API」をenableにしています。
controllers/google_auth_controller.rb
Ruby
1class GoogleAuthController < ApplicationController 2 def callback 3 client = Signet::OAuth2::Client.new(SyncAnalyticsService::CLIENT_OPTIONS) 4 client.code = params[:code] 5 end 6 7 def redirect 8 client = Signet::OAuth2::Client.new(SyncAnalyticsService::CLIENT_OPTIONS) 9 redirect_to client.authorization_uri.to_s 10 end 11end
services/sync_analytics_service.rb
Ruby
1class SyncAnalyticsService 2 CLIENT_OPTIONS = { 3 client_id: Rails.application.credentials.google[:client_id], 4 client_secret: Rails.application.credentials.google[:client_secret], 5 authorization_uri: 'https://accounts.google.com/o/oauth2/auth', 6 token_credential_uri: 'https://www.googleapis.com/oauth2/v4/token', 7 scope: [Google::Apis::AnalyticsreportingV4::AUTH_ANALYTICS_READONLY], 8 redirect_uri: Rails.application.routes.url_helpers.google_auth_callback_url, 9 additional_parameters: {prompt:'consent'}, 10 } 11end
views/reports/new.html.erb
Ruby
1<%= link_to google_auth_redirect_path do %> 2 <button> 3 <span>Google Analyticsと連携する</span> 4 </button> 5<% end %>
Google側の設定が良くないのでしょうか・・・。
すみませんが、ご教示いただければ幸いでございます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/21 19:30