使用第三方服务发送消息

App Engine 上的 Ruby 应用可以使用第三方公司提供的服务发送电子邮件、短信或接打电话。例如,通过发送电子邮件,您可以确认业务交易,确认用户帐号的创建,或发送营销讯息。

本页面例举了一些公司,这些公司提供适用于 App Engine 上的 Ruby 应用的通信服务和客户端库。

Mailgun

Mailgun 提供用于发送电子邮件的 RESTful API 和客户端库,并为 Cloud 项目用户提供免费配额。对于超出该数量的额外邮件,请参考注册页面上的每月价格计算器,了解相关价格和批量折扣。

详细了解 Mailgun:

Mailjet

Mailjet 是全球电子邮件服务,它为 App Engine 用户提供免费配额。如需使用这项优惠,请点击以下链接创建 Mailjet 帐号

详细了解 Mailjet:

SendGrid

您可以使用 SendGrid 在 App Engine 上实现电子邮件功能。SendGrid 可以提高电子邮件递送能力,并让您清楚地了解应用发送的电子邮件的后续情况。借助 SendGrid 界面或其 API,您可以查看有关邮件打开、点击、退订、垃圾信息举报以及其他内容的统计信息。

App Engine 客户可以通过 Google Cloud Console 注册加入 SendGrid Email API 计划来充分利用免费配额。请注意,Google 会向注册付费帐号的客户收取费用。

详细了解 SendGrid:

通过 Twilio 使用短信和语音服务

通过 Twilio,您可以将语音、VoIP 和短信功能嵌入应用中。Twilio 平台由 Twilio 标记语言 (TwiML)RESTful API 以及适用于网络浏览器、Android 和 iOS 的 VoIP SDK 组成。

详细了解 Twilio:

将客户端库和第三方 API 密钥添加到应用

如需在 App Engine 开发和部署环境中提供客户端库,请将该库指定为依赖项

大多数第三方服务都会使用 API 密钥来对应用进行身份验证。您可以在第三方网站上生成密钥。如需在应用中使用这些密钥,我们建议您执行以下操作:

  1. 将密钥添加到应用的 app.yaml 文件中的环境变量部分。

    例如:

     env_variables:
         EMAIL_API_KEY: key-from-third-party
    
  2. 在应用的代码中,通过环境变量检索该密钥。

  3. 根据第三方 API 的要求传递密钥。

请注意,有权访问 app.yaml 的人员也有权访问您的 API 密钥。如果您无法将 app.yaml 存储在一个安全位置,则我们建议您将 API 密钥存储在 Datastore 模式的 Firestore (Datastore) 等安全位置,然后在运行时检索这些密钥,或者将密钥保留在代码中,但使用 Cloud Key Management Service 等密钥库对其进行加密。如需了解每种方法的优点,请参阅选择密钥管理解决方案