我有一個Rails應用程序,我想用Gmail API發送電子郵件(紅寶石using google-api-client
)。我在Google開發者中創建了一個應用程序,並且生成了一個服務帳戶密鑰。我使用谷歌規範來存儲憑據JSON文件(存儲在/home/user/.config/gcloud/applicaton_default_credentials.json
)。如何在ruby中使用google api實現服務器到服務器的通信?
對於初學者來說,我想取user labels
下面是我的代碼
require 'google/apis/gmail_v1'
gmail_v1 = Google::Apis::GmailV1
service = gmail_v1::GmailService.new
service.authorization = Google::Auth.get_application_default([gmail_v1::AUTH_SCOPE, gmail_v1::AUTH_GMAIL_COMPOSE, gmail_v1::AUTH_GMAIL_MODIFY, gmail_v1::AUTH_GMAIL_READONLY])
user_id = 'me'
result = service.list_user_labels(user_id)
但是,這是給我Google::Apis::ClientError: failedPrecondition: Bad Request
錯誤。
我的最終目標是使用已生成證書JSON文件的電子郵件發送電子郵件,因爲我不想將我的用戶名和密碼放入ActionMailer的smtp配置中。