V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Angela2022
V2EX  ›  程序员

前后端开发: 公司网站要增加发邮件功能,请问如何实现?

  •  
  •   Angela2022 · 2023-07-17 06:45:34 +08:00 · 3690 次点击
    这是一个创建于 497 天前的主题,其中的信息可能已经有所发展或是发生改变。
    要求:
    1. 在"联系我们"表单, 填入 5 个邮件地址, 按发送, 则会发指定的内容到该 5 个邮件地址
    2. 前端是普通的 HTML/Jquery 页面

    网上查了有 emailjs, nodemailer 等, 要搭建后端 node 服务器

    请问:
    1. emailjs, nodemailer 哪个适合企业级发邮件?
    2. 有比 emailjs, nodemailer 更好的发邮件服务或类库吗?
    3. 后端 node 服务器如何搭建在 AWS 上方便, 直接上 EC2 吗?

    谢谢
    27 条回复    2023-07-18 09:31:09 +08:00
    Shiroka
        1
    Shiroka  
       2023-07-17 07:06:00 +08:00 via iPhone
    我记得 mailchimp 就有这种功能,应该叫 Signup form ,国内公司应该也有,就不用费心自己搭后端了
    airyland
        2
    airyland  
       2023-07-17 07:34:34 +08:00
    我觉得没必要自搭邮件服务器,直接用第三方 SaaS 服务即可。
    相比起来,如果你这功能是面向匿名用户的话,更需要担心如何防止被滥用。
    wonderfulcxm
        3
    wonderfulcxm  
       2023-07-17 08:20:34 +08:00
    这不是随便弄个 smtp 发送就好了吗?如果要用自家域名,建个企业邮箱。
    1KN6sAqR0a57no6s
        4
    1KN6sAqR0a57no6s  
       2023-07-17 08:33:30 +08:00 via Android
    直接用 mailchimp ,sendgrid 之类的第三方的邮件服务,他们是专业的。

    或者你可以看看你们的域名服务商有没有提供免费的邮箱服务。我的网店就是用的 gandi.net 自带的邮箱服务,感觉良好。
    leonshaw
        5
    leonshaw  
       2023-07-17 08:49:54 +08:00 via Android   ❤️ 7
    "联系我们"是这样用的吗?
    wu67
        6
    wu67  
       2023-07-17 08:50:20 +08:00
    企业邮箱 smtp 过去就行. 注意不要直接在前端直接就发送了, 放到后端去, 调用接口才能发, 然后接口做点安全处理, 防止被频繁发送或者被轮.
    locoz
        7
    locoz  
       2023-07-17 08:51:54 +08:00 via Android
    发个邮件别想那么复杂…翻一翻现在在用的邮件系统文档,调 SMTP 协议直接发就完事了
    locoz
        8
    locoz  
       2023-07-17 08:56:18 +08:00 via Android
    这种前端可以直接控制发送邮件的功能,应该考虑的重点其实是安全问题,而不是“邮件怎么发”。比如别人利用这个功能恶意给大量无关地址发送邮件,让你们的邮箱域名被各邮件平台认为是垃圾邮件源头…
    bjzhush
        9
    bjzhush  
       2023-07-17 08:57:30 +08:00
    有这么麻烦?如果是简单的邮件,用类似 phpmailer 的类库,写个脚本填上域名、邮箱、密码直接发就 OK 了,开发时间 2 小时内
    oneisall8955
        10
    oneisall8955  
       2023-07-17 08:58:32 +08:00 via Android   ❤️ 2
    收邮件,mailto:xx1,xxx2....,xxx5 弹出发邮件窗口就可以了吧?
    BG7ZAG
        11
    BG7ZAG  
       2023-07-17 09:49:55 +08:00
    用 nodemailer 简单点,nestjs + nodemailer 或者 egg + nodemailer 方便点,用 koa 或者 express 有些东西需要自己搭
    fiypig
        12
    fiypig  
       2023-07-17 09:54:06 +08:00
    最近刚做了个发邮箱的,不过是我们发给用户的, 开启 smtp 就可以,然后用户申请的时候就放到队列去操作
    ccraohng
        13
    ccraohng  
       2023-07-17 11:54:52 +08:00
    postmark 不错
    biubiuF
        14
    biubiuF  
       2023-07-17 12:50:53 +08:00
    aws 自带的邮件服务
    imnpc
        15
    imnpc  
       2023-07-17 13:45:48 +08:00
    这是典型的嫌弃自己网站死的不够快的...
    联系我们 做表单+图形验证码 提交,存储在数据库里面,后台查看

    用发邮件简直是最作死的方法,而且还是 5 个邮箱...会被垃圾软件扫描以后疯狂攻击发送垃圾邮件
    tool2d
        16
    tool2d  
       2023-07-17 14:04:33 +08:00
    现在大公司邮件体系完善,都有白名单机制,你全新的自建域名,邮件不一定能发送成功。

    还不如调用第三方的 smtp 协议,调用一下 API 算了。
    opengps
        17
    opengps  
       2023-07-17 14:06:53 +08:00
    后端几行代码就可以调用成品类库实现对接邮箱的 stmp 服务发送
    zkaip
        18
    zkaip  
       2023-07-17 14:10:03 +08:00
    联系我们可以做表单,然后存到数据库的时候,触发 smtp 自动发送邮件即可。为了查看信息,没必要把邮件放到页面上。
    Nazz
        19
    Nazz  
       2023-07-17 14:11:16 +08:00
    买云服务, 自己搭建的容易被扔到垃圾邮件
    clockzhong
        20
    clockzhong  
       2023-07-17 14:11:30 +08:00
    阿里云/aws 上用公司域名注册一个发信地址,购买资源包,就可以调用云服务商的 smtp 服务了,阿里云国际上发 50w 封邮件大概 120$
    neetrorschach
        21
    neetrorschach  
       2023-07-17 14:23:51 +08:00
    内部邮件可以自己搭,接收外部邮件或者对外发送邮件的建议还是买服务。自己搭的可能会被接收方认为是垃圾邮件,有时候跨国邮件还会收不到。
    npe
        22
    npe  
       2023-07-17 14:25:37 +08:00
    AWS. SES
    masterclock
        23
    masterclock  
       2023-07-17 15:33:24 +08:00
    联系我们?
    联系他们!
    cnevil
        24
    cnevil  
       2023-07-17 20:42:17 +08:00
    联系我们 X
    骚扰他们√
    erikk0
        25
    erikk0  
       2023-07-17 22:24:44 +08:00
    邮件通知请用
    sendgrid 或者
    mailgun

    mailchamp 是做邮件营销的
    dayeye2006199
        26
    dayeye2006199  
       2023-07-17 23:27:27 +08:00
    我们是提交表单,就存一份内容到 airtable 里面。
    然后挂一个 slack 的 hook ,人就会收到通知了。

    这个表单反垃圾工作要做好,会有一堆尼日利亚公主,越南王子,东欧富婆什么的来联系你
    flyqie
        27
    flyqie  
       2023-07-18 09:31:09 +08:00 via Android
    @dayeye2006199 #26

    他们这么玩真的有人会上钩吗。。又不是发到个人邮箱。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2261 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:12 · PVG 00:12 · LAX 08:12 · JFK 11:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.