如何使用 Node JS 从多个帐户发送电子邮件?

时间:2021-04-27 16:00:55

标签: node.js google-oauth nodemailer

我正在构建一个系统,它的注册用户可以在其中自动发送电子邮件。我遇到了 2 个解决方案来实现这一目标,

  1. 通过获取 GMAIL 帐户的用户名和密码并使用 nodemailer 发送邮件。
  2. 通过使用 Google Oauth,让用户可以访问我的应用以代表他们发送邮件(不共享他们的邮件凭据)。

第一种方法很简单,但第二种方法听起来更专业和安全。我想出了如何使用单个 acc 发送邮件。给其他人。但找不到可能的解决方案,从用户的邮件发送电子邮件。 (因为它需要刷新令牌才能发送)

我来这里是为了寻找一个可能的解决方案来帮助我解决这个问题。提前致谢!

2 个答案:

答案 0 :(得分:0)

使用 google OAuth 或者如果使用第一个使用 bcrypt salt 或某种类型的哈希来保护密码。

答案 1 :(得分:0)

我建议您选择second option。这样做有一个很好且非常重要的理由。您需要有一个良好且安全的数据库来保存这些信息,这对您来说可能是一种开销。

散列密码并将其保存到数据库对您没有帮助。因为您永远无法从散列密码中获得实际密码,并且您无法将散列密码发送到 gmail 帐户。所以,你不能那样做。

第二个选项在每个术语中都是更好的方法,您只需要有一个刷新令牌,这没什么大不了的。你可以得到它 nodemailer 传输层可以帮你得到它。

我附上了这个 link,您可以在其中轻松复制完成它的步骤。