从联系表单发送电子邮件与firebase功能和nodemailer

Geo*_* C. 6 firebase nodemailer google-cloud-functions angular

我使用的技术是

  • Angular 4
  • 火力地堡
  • firebase托管
  • firebase功能
  • firebase实时数据库
  • firebase存储

我在firebase托管上托管我的网站,我有一个像图片的联系表格,我希望每次用户提交该表格,发送电子邮件给网站管理员怎么样,我可以用firebaseNodemailer发送电子邮件怎么样可能的,我是firebase功能的新手,我不知道该怎么做.

我可以在函数文件夹中索取index.js中的nodemailer或者这是错误的吗?

我在图片中有这样的联系表格

在此输入图像描述

Bil*_*hov 9

当你不确定某些事情是如何完成的时候,总是很好.在这里,我将尝试给您一些简单的步骤,了解如何实现这一目标.

首先,确保在项目中初始化Firebase功能.如果您不知道如何做到这一点,只需谷歌它,在他们的公司网站上,他们对每个主题都有惊人的解释.

完成后,使用HTTP触发器设置单个Firebase功能.确保在项目的Firebase功能文件夹中运行npm install nodemailer@2.4.1 --save.确实安装版本2.4.1至关重要,因为在尝试部署函数本身之后所有版本都会崩溃.(我还是没弄明白为什么)

编辑:

我刚刚发现Firebase功能与较新版本的Nodemailer崩溃的原因是什么.这是我正在运行的Node版本.更新我的节点后,一切都很好.这里也提到了这个问题: 链接到官方GitHub页面

因此,您仍然需要使用哪个版本,只需确保如果您运行的是最新的Nodemailer,它还需要更新的Node.;)

完成后,打开Firebase功能的代码,转到Nodemailer的官方网站,查看单个邮件的编写和发送方式.这里有一个很棒的例子,实际上大部分是复制粘贴到你的代码中,还有一些额外的配置(用户名和密码).

确保从您的前端Angular应用程序中,您使用表单上的那些字段中的数据发出POST请求.您还需要确保当Firebase功能收到请求时,它会配置电子邮件,发送它,并在最后响应正确的状态代码和消息.

我写的一切可能听起来有点复杂,我不知道你的ICT能力,但要确保你仔细阅读,你谷歌你不明白,如果你仍然找不到答案,请确保你回复在这里,所以我或其他人可以给你一个帮助.

我还会在这里添加一个链接,您可以在此过程中指导自己.

点击此处查看Google自己的示例

祝你好运.祝你好运.