App Engine 应用可以使用第三方公司提供的服务发送电子邮件、短信或接打电话。例如,您可以发送电子邮件确认业务交易、用户账号的创建,或者发送营销讯息。
本页面例举了一些公司,这些公司为 App Engine 应用提供通信服务和客户端库。
Mailgun
Mailgun 提供用于发送电子邮件的 RESTful API 和客户端库,并为所有用户提供免费配额。对于超出该数量的额外邮件,请参考注册页面上的每月价格计算器,了解相关价格和批量折扣。
详细了解 Mailgun:
Mailjet
Mailjet 是全球电子邮件服务,它为 App Engine 用户提供免费配额。如需使用这项优惠,请点击以下链接创建 Mailjet 账号。
详细了解 Mailjet:
SendGrid
您可以使用 SendGrid 在 App Engine 上实现电子邮件功能。SendGrid 可以提高电子邮件递送能力,并让您清楚地了解应用发送的电子邮件的后续情况。借助 SendGrid 界面或其 API,您可以查看有关邮件打开、点击、退订、垃圾信息举报以及其他内容的统计信息。
App Engine 客户可以通过 Google Cloud 控制台注册加入 SendGrid Email API 计划来充分利用免费配额。请注意,Google 会向注册付费账号的客户收取费用。
详细了解 SendGrid:
通过 Twilio 使用短信和语音服务
通过 Twilio,您可以将语音、VoIP 和短信功能嵌入应用中。Twilio 平台由 Twilio 标记语言 (TwiML)、RESTful API 以及适用于网络浏览器、Android 和 iOS 的 VoIP SDK 组成。
详细了解 Twilio:
将客户端库和第三方 API 密钥添加到应用
如需在 App Engine 开发和部署环境中提供客户端库,请将该库指定为依赖项。例如,如需指定 Node.js 运行时的依赖项,请参阅此处。
大多数第三方服务都会使用 API 密钥来对应用进行身份验证。您可以在第三方网站上生成密钥。如需在应用中使用第三方 API 密钥,请执行以下操作:
将 API 密钥存储在 Secret Manager 中,并在实例启动时安全地提取密钥。
使用 Cloud Key Management Service 对密钥进行加密,将加密后的密钥存储在环境变量中,并在实例启动时以编程方式对其进行解密。
对于非生产环境,您可以将密钥本身存储在环境变量中。请注意,有权访问您的
app.yaml
文件的任何人也有权访问您的密钥。
如需了解每种方法的优点,请参阅选择密钥管理解决方案
如需将密钥或加密的密钥值存储在环境变量中,请执行以下操作:
将密钥或加密的密钥值添加到应用
app.yaml
文件中的环境变量部分。例如:
env_variables: EMAIL_API_KEY: key-from-third-party OR encrypted-key
如果您使用的是 Node.js 运行时,请将密钥添加到应用
app.standard.yaml
文件的应用环境变量部分中的配置变量。在应用的代码中,从环境变量检索密钥或加密的密钥。
例如,如果您使用的是 Python 运行时:
EMAIL_API_KEY = os.environ['EMAIL_API_KEY']
根据第三方 API 的要求传递密钥。 如果您之前对密钥进行了加密,请务必对密钥进行解密。