将电子邮件提供商与我的应用程序集成

问题描述

我有一个基于 React 的 Web 应用程序,以及基于 nestJs 的后端。我想将电子邮件平台集成到我的应用程序中。 假设用户在我的应用程序中注册,然后他使用应用程序中的其他功能。 然后他想使用我的应用接收和发送电子邮件,为此,他必须将他的电子邮件帐户(无论是 Gmail、Hotmail 还是任何其他电子邮件提供商)与我的应用集成。

我怎样才能提供这样的功能?它叫什么?

我尝试在 Google 上对其进行了一些研究,并找到了一些选项,例如 Nylas 和 MailGun。但我不确定它们是否符合我的情况。

感谢任何领导和建议。 谢谢

解决方法

您需要一个 IMAP 客户端来检索从远程服务器(Google、Microsoft 等)收到的电子邮件,您应该可以使用 IMAP Simple package

此外,您还需要一个 SMTP 客户端来发送电子邮件,为此,您需要 SMTP Client

这将要求用户披露他们的 SMTP/IMAP 详细信息或在某些情况下他们的实际登录详细信息,这可能会让他们感到不舒服;但是,这种方法几乎适用于所有邮件服务提供商/服务器。

或者,如果您只是针对 Gmail,您可以使用 Gmail API,用户可以在其中授予您的应用发送和访问其邮件的权限。

您还可以使用 Microsoft Graph 界面访问他们的 Mail API,以便从 Hotmail/Outlook 发送和接收电子邮件。

,

Nylas 绝对适合这个用例:主要目的是让开发人员能够将其用户的电子邮件帐户集成到应用程序中。您可以通过仪表板连接您自己的电子邮件帐户以进行测试,或使用 hosted auth service 自动检测电子邮件提供商并提供适当的登录流程来连接用户电子邮件帐户。连接帐户后,您可以使用 ThreadsMessages 端点接收电子邮件内容,使用 SendOutbox 端点发送电子邮件。

另一方面,Mailgun 是一种交易电子邮件 API 服务,主要用于大规模营销电子邮件、帐户管理(密码重置、电子邮件验证)等。Afaik,它不会连接到您用户的电子邮件帐户,即使它被用于发送来自特定用户的电子邮件(电子邮件来自 Mailgun 的 SMTP 服务器,而不是用户的提供商)。您可以详细了解交易电子邮件 API (Mailgun) 和上下文电子邮件 API (Nylas) here 之间的区别。