2017-02-08 5 views
0

내 앱용 캘린더 API를 인증하려고합니다. 제공된 .json 파일을 사용하거나 ENV 변수를 사용하여 작업 할 권한을 얻을 수 없습니다.ENV 변수가있는 서비스 계정에 대해 Google API 클라이언트를 인증하려면 어떻게해야합니까?

누군가 내게이 작업을 수행하는 방법을 설명해 주시겠습니까? ENV 변수를 사용하는 것을 선호하지만, 가능하지 않다면 작동하는 모든 방법이 놀라 울 것입니다!

이것은 내가 지금 무엇을 가지고 :

client = Google::APIClient.new(:application_name => 'App Name', :application_version => '1.0.0') 
     client_secrets = Google::APIClient::ClientSecrets.load 
     client.authorization = Signet::OAuth2::Client.new(
     :token_credential_uri => 'https://accounts.google.com/o/oauth2/token', 
     :audience => 'https://accounts.google.com/o/oauth2/token', 
     :scope => 'https://www.googleapis.com/auth/calendar', 
     :issuer => Rails.application.secrets.GOOGLE_CLIENT_EMAIL, 
     :person => Rails.application.secrets.GOOGLE_CALENDAR_EMAIL 
     ) 
     client.authorization.fetch_access_token! 
     service = client.discovered_api('calendar', 'v3') 
+0

질문에 언급 된 오류를 질문에 포함시켜야 문제를 찾을 수 있습니다. –

답변

0

당신은 레일에 환경 변수를 만들 수 figaro를 사용할 수 있습니다. 더 많은 구성 옵션을 확인하려면 문서를 확인하십시오.

+0

앱은 env 변수에 대해 secrets.yml 파일을 사용하므로, 나는 figaro를 사용할 수 없습니다. ENV 변수는 문제가 없지만 이미 설정되어 있습니다. Google API 인증이 문제가 있으므로 작동하지 않는 것 같습니다. – NeyLive

+0

어떤 오류가 있습니까? –

+0

문자열에 nil이 암시 적으로 변환되지 않음 – NeyLive