使用 firebase 函数和 nodemailer 从联系表单发送电子邮件
Sending emails from contact form, with the firebase functions and nodemailer
我使用这些技术:
- Angular 4
- Firebase
- firebase 托管
- firebase 函数
- firebase 实时数据库
- firebase 存储
我在 firebase 主机上托管我的网站,我有一个如下图所示的联系表格,我希望每次用户提交该表格时,都向网站管理员发送一封电子邮件
我将如何使用 firebase 和 Nodemailer
发送电子邮件
我应该在 index.js on functions 文件夹中要求 nodemailer 还是错误的?
This is my contact form.
当您不确定某件事是如何完成的时候,问问总是好的。在这里,我将尝试为您提供一些有关如何实现这一目标的简单步骤。
首先确保在项目中初始化 Firebase 函数。如果您不知道该怎么做,就 Google 吧,在他们的公司网站上,他们确实对每个主题都有惊人的解释。
完成后,使用 HTTP 触发器设置单个 Firebase 函数。确保在项目的 Firebase 函数文件夹中,您 运行 npm install nodemailer@2.4.1 --save
。安装真正的 2.4.1 版是一个关键点,因为之后所有的版本在尝试部署函数本身时都会崩溃。 (我还没搞明白为什么)
编辑:
我刚刚发现 Firebase 函数在较新版本的 Nodemailer 中崩溃的原因。这是我 运行ning 的 Node 版本。更新我的节点后,一切都很好。这里也提到了这个问题:
Link to official GitHub page
因此,仍然取决于您喜欢哪个版本,只要确保如果您运行使用最新的 Nodemailer,它也需要更新的 Node。 ;)
完成后,打开你的Firebase函数的代码,到Nodemailer的官网,看看一条消息是如何组成和发送的。那里有一个很棒的例子,它实际上主要是复制粘贴到你的代码中,还有一些额外的配置(用户名和密码的东西)。
确保从您的前端 Angular 应用程序发出 POST 请求,其中包含您在表单上的那些字段中的数据。您还需要确保当您的 Firebase 功能收到请求时,它会配置电子邮件消息、发送它并在最后以正确的状态代码和消息进行响应。
我写的所有内容可能听起来有点复杂,我不知道你的 ICT 能力,但请确保你仔细阅读它,你 Google 你不明白的地方,如果你仍然不能找到答案,确保你在这里回复,这样我或其他人可以给你帮助。
我也会在这里放一个link,你可以在这个过程中用来指导自己。
Click here to see an example from Google themselves
祝你好运。
我使用这些技术:
- Angular 4
- Firebase
- firebase 托管
- firebase 函数
- firebase 实时数据库
- firebase 存储
我在 firebase 主机上托管我的网站,我有一个如下图所示的联系表格,我希望每次用户提交该表格时,都向网站管理员发送一封电子邮件
我将如何使用 firebase 和 Nodemailer
发送电子邮件我应该在 index.js on functions 文件夹中要求 nodemailer 还是错误的?
This is my contact form.
当您不确定某件事是如何完成的时候,问问总是好的。在这里,我将尝试为您提供一些有关如何实现这一目标的简单步骤。
首先确保在项目中初始化 Firebase 函数。如果您不知道该怎么做,就 Google 吧,在他们的公司网站上,他们确实对每个主题都有惊人的解释。
完成后,使用 HTTP 触发器设置单个 Firebase 函数。确保在项目的 Firebase 函数文件夹中,您 运行 npm install nodemailer@2.4.1 --save
。安装真正的 2.4.1 版是一个关键点,因为之后所有的版本在尝试部署函数本身时都会崩溃。 (我还没搞明白为什么)
编辑:
我刚刚发现 Firebase 函数在较新版本的 Nodemailer 中崩溃的原因。这是我 运行ning 的 Node 版本。更新我的节点后,一切都很好。这里也提到了这个问题: Link to official GitHub page
因此,仍然取决于您喜欢哪个版本,只要确保如果您运行使用最新的 Nodemailer,它也需要更新的 Node。 ;)
完成后,打开你的Firebase函数的代码,到Nodemailer的官网,看看一条消息是如何组成和发送的。那里有一个很棒的例子,它实际上主要是复制粘贴到你的代码中,还有一些额外的配置(用户名和密码的东西)。
确保从您的前端 Angular 应用程序发出 POST 请求,其中包含您在表单上的那些字段中的数据。您还需要确保当您的 Firebase 功能收到请求时,它会配置电子邮件消息、发送它并在最后以正确的状态代码和消息进行响应。
我写的所有内容可能听起来有点复杂,我不知道你的 ICT 能力,但请确保你仔细阅读它,你 Google 你不明白的地方,如果你仍然不能找到答案,确保你在这里回复,这样我或其他人可以给你帮助。
我也会在这里放一个link,你可以在这个过程中用来指导自己。
Click here to see an example from Google themselves
祝你好运。