V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
quietjosen
V2EX  ›  分享创造

开源一个邮件发送工具

  •  
  •   quietjosen ·
    atjason · 2020-02-12 07:31:10 +08:00 · 4026 次点击
    这是一个创建于 1507 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目中,经常需要使用邮件来发送一些信息,比如重要错误、自己关心的信息等等。

    市面上有很多类似的消息推送服务,比如 Server 酱PushBear,接口也很简单。只是我目前还是习惯于用邮件来管理这些信息。每个项目重复一个邮件模块挺烦的,而且像小程序这样的环境,又不支持发邮件。于是自己做了一个:

    https://github.com/atjason/email_message

    首先,你需要更新项目中的配置文件 config.js,完成邮件账户、服务器端口等信息的配置。

    然后,你需要有服务器、域名,然后把以上服务配置到服务器中,使用 nginx 等服务器应用完成网络转发。

    这些完了之后,客户端请求就很容易了。假设部署的域名是 https://example.com,只需要发一个网络请求,如 https://example.com/?s=SECRET&t=title,就会发一封邮件标题为 title、正文为空的邮件。其中 SECRET 用于阻止非法访问,达到一定程度的安全性。更多参数,可在项目中查看,或者自己设置。

    一些信息:我后台是使用 Gmail 来发送邮件。可以先注册一个小号,专门用于发邮件。然后允许其在非安全环境登录。如果首次在一个 IP 等环境使用该账户发邮件时,会因安全提示而阻止。此时,只需在浏览器中访问提示中的网址,进行安全验证即可。我的服务器部署在国外,因此没有那个神奇问题的干扰。

    当然,你也可以使用其他邮件服务。另外,一般的云服务也提供邮件服务,每天也有大约 200 的免费发送量,对个人基本也是够的。不过,以我测试的经验,触达率不好说。即使是把发送方加入收件人的联系人或白名单,也会出现发送成功、但收不到、垃圾邮箱里也没有的情况。而 Gmail 是我测试下来最让人放心的。

    最后,如果我是重复造轮子,也欢迎推荐好用的邮件工具,先谢。

    8 条回复    2020-02-13 10:50:40 +08:00
    august2333
        1
    august2333  
       2020-02-12 08:00:56 +08:00 via iPhone
    控制多个 gmail 群发?
    love
        2
    love  
       2020-02-12 08:08:33 +08:00 via Android
    我也有自己的邮件工具,不过是自己写的邮件服务器端,不用其他第三方,比如你说的 gmail。第三方用来做警报都是有问题的,比如你程序出了个错一下子发了几百封,就可能会漏邮件或者被停一段时间或者被标记为垃圾邮件都有可能。
    quietjosen
        3
    quietjosen  
    OP
       2020-02-12 08:18:21 +08:00
    @love 恩,邮件总是有触达率的问题,自己写邮件服务器更稳定些。
    quietjosen
        4
    quietjosen  
    OP
       2020-02-12 08:18:32 +08:00
    @august2333 并不这个目的。
    omph
        5
    omph  
       2020-02-12 08:39:54 +08:00
    linux 下一行 mail 命令就可以了
    quietjosen
        6
    quietjosen  
    OP
       2020-02-12 10:15:18 +08:00 via iPhone
    @omph 其他平台就不行了,比如微信小程序。用系统内建邮件服务和第三方,各有利弊。
    wuhaoworld
        7
    wuhaoworld  
       2020-02-12 21:02:13 +08:00
    系统发 提醒 /通知 邮件得用 Sendcloud,Mailgun,阿里云 这种专业第三方邮件服务,自己用 SMTP 很容易就被屏蔽或被判定为垃圾邮件了
    quietjosen
        8
    quietjosen  
    OP
       2020-02-13 10:50:40 +08:00 via iPhone
    @wuhaoworld 阿里云我试过,提示发送成功,但是收不到也没有垃圾邮件。我用 Gmail,目前感觉稳定,粗略估计没屏蔽过。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2570 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 15:39 · PVG 23:39 · LAX 08:39 · JFK 11:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.