Python 2 不再受社区支持。我们建议您将 Python 2 应用迁移到 Python 3

使用第三方服务发送消息

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

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

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 组成。

升级后,Google App Engine 客户将收到免费赠金,用于抵扣短信或通话(按分钟结算)费用。

详细了解 Twilio:

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

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

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

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

    例如:

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

     EMAIL_API_KEY = os.environ['EMAIL_API_KEY']
    
  3. 根据第三方 API 的要求传递密钥。

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