首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用nodejs向163邮箱, gmail邮箱, qq邮箱发邮件, nodemailer使用详解

以前写过一篇3行代码发邮件(含发送图片), 收获了50+喜欢, 最近博主在用node做后端渲染的业务, 把nodejs发邮件的核心代码也分享一下 准备工作 准备一个163的邮箱, 并获取授权码 点击查看获取...163邮箱授权码具体步骤 在本地机器安装nodejs "注释详尽"的源码 'use strict'; const nodemailer = require('nodemailer'); const moment...let mailOptions = { // 发件人地址 from: 'lijianzhaoyou@163.com', // 收件人列表, 向163邮箱, gmail...邮箱, qq邮箱各发一封 to: 'lijianzhaoyou@163.com, zhaoolee@gmail.com, 861881383@qq.com', // 邮件主题...发邮件的代码量,远大于三行代码的yagmail,但nodemailer的通用性还是蛮强的, 推荐使用, 如果哪个小伙伴用更好用的nodejs发邮件的模块, 欢迎在下方留言, 最后祝双十一剁手愉快~

3K30
您找到你想要的搜索结果了吗?
是的
没有找到

用 Node.js 实现定时任务

在本文中,我们将研究如何在 Node 程序中创建和使用 Cron 作业。为此我们将创建一个简单的程序,该应用程序会自动服务器中删除自动生成的 error.log 文件。...创建文件到发送电子邮件和运行脚本的各种操作。让我们看一下更多的用例 用例2 - 备份数据库 确保用户数据的可访问性对于任何企业都是至关重要的。...通过运行以下命令来安装 nodemailer: npm install nodemailer 完成后,更新 index.js 文件,如下所示: // index.js const cron = require...("node-cron"); const express = require("express"); let nodemailer = require("nodemailer"); app = express...(); // create mail transporter let transporter = nodemailer.createTransport({ service: "gmail",

5.6K10

作为 Node 程序员,如何收发邮件更显专业?

= require("nodemailer"); const transporter = nodemailer.createTransport({ host: "smtp.qq.com",...而且邮件是支持 html + css 的,比如我们把我之前那个 3 只小鸟的 button 的 html 拿过来: 放到一个文件里,然后发邮件的时候读取这个文件: 然后再跑下: 收到的邮件也渲染出了这个...这里解析邮件内容要使用 mailparser 这个包: const { MailParser } =require('mailparser'); const fs = require('fs'); const...但是这样不够方便: 比如写邮件不能直接贴 html + css,不能写 markdown,收邮件不能按照规则自动下载附件、自动保存邮件内容。 这些需求我们都能通过代码来自己实现。...能够写代码来收发邮件之后,就可以做很多自动化的事情了: 比如定时自动发一些邮件,内容是数据库查出来的,比如自动拉取邮件,根据一定的规则来保存邮件和附件内容等。

20620

使用github-action推送博客部署仓库至NPM

改为直接使用本地新建scripts 绘制流程图 参考方向 教程原贴 参考了小康的博文中,关于解决hexo deploy无法提交.github文件夹至博客部署仓库的办法。...目前,虽然jsdelivr已经恢复了服务,但是这只是通过在“中国附件”的节点提供的CDN加速服务,速度上还不如放到本地。这种反向加速的CDN服务,我们已经可以认为jsdelivr已经挂了。...幸运的是,虽然jsdelivr挂了,但是npm依然有大量的镜像节点可以使用,关于此项内容可以参考本站的另一篇教程: https://akilar.top/posts/3e956346/ 那么,新的问题又出现了.../gh/user/repo@version/file,前者可以通过用npm的其他镜像节点加速来解决,但后者就没有这么多加速节点可以使用了。...而指令相比hexo deploy较为繁琐,所以推荐是使用github action来完成。当然实在不想配置github action的,可以在本地留个自动提交脚本。最终也能实现提交流程的。

51010

使用 Docker 搭建适用于 HomeLab 的轻量邮件网关

但当我们部署了越来越多的软件和服务之后,关闭邮件通知属于“鸵鸟行为”,是不推荐的;在不能100%确定软件可靠性的前提下,所有软件共享一个邮箱账号,显然是不安全的;最可靠的方案,便是为为每一个软件配置不同的邮箱账号...邮局类软件应用 邮局类软件,顾名思义,和我们日常使用GMail、Outlook、QQ 邮箱、163 邮箱等等。...基于 MailDev 进行二次开发 项目当前出现的问题和社区里的反馈里,我们可以看到几个比较明显的问题: 软件文档和官方镜像似乎“对不上号”,一些代码中的依赖配置项也是有问题的,会导致软件无法正常使用...这里为了方便描述,我使用 Node.js 写了一个非常简单的发信脚本: 'use strict' const nodemailer = require('nodemailer') async function...main () { const { user, pass } = await nodemailer.createTestAccount() let transporter = nodemailer.createTransport

1.3K00

得物商家客服桌面端Electron技术实践

值得一提的是Flutter desktop,渲染原理看flutter是skia自绘性能优于Electron,但问题还是稳定性和生态。...web项目迁移变成应用渲染进程的时候不能像web应用一样直接打包,需要调整请求API代码,API前缀需要区分本地调试和应用环境: 使用Electron, 将项目打包成离线应用。...此方案还存在不少的缺陷,由于生产构建环境需要window环境,所以暂时不支持在远程打包,目前都是在本地window机器上打出完整的包之后再上传到CDN,商家客服通过加载CDN的更新包来替换本地安装文件,...Uncaught ReferenceError: require is not defined,这个报错是试图在渲染进程使用node的时候出现的,不是不能用,只要开启 主进程的nodeIntegration...下载npm包特别慢 解决方案:yarn安装;Electron相关的包优先使用淘宝镜像安装;使用公司镜像安装公司内部包。

1.1K10

得物商家客服桌面端Electron技术实践

Objective-C)不管原生体验、包的体积、性能方面来说都是最佳的选择,但是开发门槛高,迭代速度慢。...值得一提的是Flutter desktop,渲染原理看flutter是skia自绘性能优于Electron,但问题还是稳定性和生态。...此方案还存在不少的缺陷,由于生产构建环境需要window环境,所以暂时不支持在远程打包,目前都是在本地window机器上打出完整的包之后再上传到CDN,商家客服通过加载CDN的更新包来替换本地安装文件,...Uncaught ReferenceError: require is not defined,这个报错是试图在渲染进程使用node的时候出现的,不是不能用,只要开启 主进程的nodeIntegration...下载npm包特别慢解决方案:yarn安装;Electron相关的包优先使用淘宝镜像安装;使用公司镜像安装公司内部包。

1.1K30

Valine自定义邮件回复提示

SMTP_PASS *********SMTP 密码,一般为授权码,而不是邮箱的登陆密码,请自行查询对应邮件服务商的获取方式 √ SMTP_SERVICE 163邮件服务提供商,支持 QQ、163、126、Gmail...、“Yahoo”、… ,全部支持请参考 : Nodemailer Supported services。...cungudafa) 寄件人名称 √ ADMIN_URL https://xxx.xx.cn/post主机二级域名,用于自动唤醒 建议 TO_EMAIL xxxxx@qq.com博主通知收件地址,默认使用...重启容器 防止云引擎休眠 免费版的 LeanCloud 容器,是有强制性休眠策略的,不能 24 小时运行:每天必须休眠 6 个小时 30 分钟内没有外部请求,则休眠。...分析了一下上方的策略,如果不想付费的话,最佳使用方案就设置定时器,每天 7 - 23 点每 20 分钟访问一次,这样可以保持每天的绝大多数时间邮件服务是正常的。

98610

Docker教程(九)部署Spring Boot项目

前面基本上都是安装软件,安装软件都是一样的步骤 搜索镜像 拉取镜像 挂载数据 挂载配置 启动 说实话在介绍安装,都快把我拉黑了,那么本篇将讲下如何部署项目 一....file 1.4 远程访问 现在尝试另一台装有docker的机器上测试远程访问本机,命令是docker -H tcp://xxx:2375 images,如下所示: docker -H tcp://xxx...FROM java:openjdk-8-jre-alpine # 维护者信息 MAINTAINER im.lihaodong@gmail.com #Default to UTF-8 file.encoding...开始Docker部署项目 常用的两种构建方式 Dockerfile和jar 在服务器上进行构建 利用Maven的Docker打包工具进行应用构建同时推送到远程仓库 3.1 本地生成jar传到服务器进行部署...file 发现Dockerfile文件和jar在一起了,那我们就把他俩送去新家吧 3.1.3 传到服务器 使用SFTP即可 我这里是放到/usr/local/src下 ?

3.1K20

Hcode网站的搭建日记(五)使用Valine实现评论功能

appId 类型:String 默认值:null 必要性:true LeanCloud的应用中得到的appId. 获取appId 和 appKey。...appKey 类型:String 默认值:null 必要性:true LeanCloud的应用中得到的appKey. 获取appId 和 appKey。...必要性: false ⚠️ 该配置适用于国内自定义域名用户, 海外版本会自动检测(无需手动填写) v1.3.10+ emojiCDN 类型: String 默认值: `` 必要性: false 设置表情包CDN...SMTP_PASS : SMTP 密码,一般为授权码,而不是邮箱的登陆密码,请自行查询对应邮件服务商的获取方式 SMTP_SERVICE : 邮件服务提供商,支持 QQ、163、126、Gmail、"Yahoo...,全部支持请参考 : Nodemailer Supported services。 --- 如这里没有你使用的邮件提供商,请查看自定义邮件服务器 SENDER_NAME : 寄件人名称。 ?

68420

如何使用prerender-spa-plugin插件对页面进行预渲染

现状 目前商企通官网情况列举如下: 技术栈使用的是Vue,脚手架使用的是vue-cli,使用JavaScript前端渲染方案(这个方案对技术栈没有要求,兼容所有方案) 发布工具使用的是公司的工具,打包过程中...但是在本地,这个时候CSS和JS资源还没有上传到CDN中,浏览器无法加载对应的资源进行页面的渲染,这样的话会导致本地渲染失败。 为了解决这个问题,有两个解决思路。...【推荐】调整打包的策略,将非HTML资源也上传至同一个CDN域名下,这样的话,我们就可以使用相对路径来访问这些资源,不需要传递新域名给publicPath,这样我们在本地构建的时候就可以访问到这些值。...(如果上面那个方法实在无法实现,那么可以考虑这个方案)在预渲染之前,资源是在本地可以通过相对路径访问到的,这个时候使用替换的方式把HTML中的资源文件地址替换掉,然后预渲染完成后再替换回来。...,在预渲染插件执行前,将HTML中的资源的地址替换成本地的相对路径;第二个则需要在替换后执行,这样将预渲染后端资源中的相对路径,再替换成CDN地址。

2K30

IM跨平台技术学习(七):得物基于Electron开发客服IM桌面端的技术实践

实现比较简单,如下:5.3.4 渲染进程打包这块为什么要单拎出来讲渲染进程打包呢,是因为web项目迁移变成应用渲染进程的时候不能像web应用一样直接打包,需要调整请求API代码,API前缀需要区分本地调试和应用环境...代码如下:使用Electron, 将项目打包成离线应用。使用file协议,在本地读取静态资源。但是ajax请求如果用相对路径,打包之后,会直接找到根目录。如下截图。...**此方案还存在不少的缺陷:**由于生产构建环境需要window环境,所以暂时不支持在远程打包,目前都是在本地window机器上打出完整的包之后再上传到CDN,商家客服通过加载CDN的更新包来替换本地安装文件...问题二:“Uncaught ReferenceError: require is not defined”:这个报错是试图在渲染进程使用node的时候出现的,不是不能用,只要开启 主进程的nodeIntegration...问题四:下载npm包特别慢:**解决方案:**yarn安装、Electron相关的包优先使用淘宝镜像安装、使用公司镜像安装公司内部包。八、本文小结一路开发下来,感慨很多。

79321

6个绝招,让你的网站加载速度提高3倍!

三、图片使用懒加载,视频或音频禁止自动播放 还记得子凡曾在泪雪博客写过关于“图片懒加载是否会影响网站SEO优化”的文章,其中就说到过如何合理的使用图片懒加载技术提升用户体验而不影响网站优化,因为懒加载是为了防止页面一被打开就立即载入图片...四、使用CDN加速静态资源 关于使用CDN加速是否影响网站优化的文章子凡也曾有过讨论,子凡对于网站整体做CDN加速还是有些不太认同,但是对于将网站静态资源做CDN加速镜像或者缓存优化却是非常认同的,例如将网站的...js、css、图片等文件做CDN加速是更有利于整个网站的加载和打开速度的。...五、提升页面渲染速度 将CSS样式写在头部样式表中,减少由CSS文件网络请求造成的渲染阻塞。 将Java放到文档末尾,或使用async方式加载,避免JS执行阻塞渲染。...六、服务器本身的速度优化 启用服务器Gzip压缩功能; 开启数据库查询及页面缓存功能(如果是直接生成静态页面的网站可忽略); 升级或者保证服务器足够的网络带宽; 开启网站缓存,充分利用本地缓存。

1.9K60

实时音视频 TRTC 常见问题汇总---咨询问题篇

支持,通过 setLocalViewMirror 接口设置本地摄像头预览画面的镜像模式,或者通过 setVideoEncoderMirror 接口设置编码器输出的画面镜像模式。 5....TRTC 能不能支持屏幕共享?...目前在 iOS/Android 端调用 snapshotVideo() 支持本地及远端视频画面截图。 36. TRTC 有没有首帧渲染回调?能否监听画面开始渲染,声音开始播放?...TRTC 音视频流是否支持通过 CDN 拉流观看? 支持,详情请参见 实现 CDN 直播观看。 50. TRTC 自定义渲染支持哪些格式? iOS 端支持 i420、NV12 和 BGRA。...移动直播 关键词:一对多,RTMP/HLS/HTTP-FLV 协议,CDN 直播分为推流端、源站、CDN、播放端,使用的是通用标准的协议如RTMP,经过CDN分发后,播放时一般可以选择RTMP、HTTP-FLV

8.1K20

实战填坑 | CS使用CDN隐藏C2

-dname "CN=gmail.com, OU=Google Mail, O=Google GMail, L=Mountain View, ST=CA, C=US" (Windows版也可使用java...下一步就可以cloudflare一键导出证书: ? 依然是使用openssl生成p12,然后store文件,具体操作参考上一个思路。...2.服务器特征配置 2.1隐藏服务器:CDN加速 在cloudflarr注册域名后,将NS记录指向alice.ns.cloudflare.com和chase.ns.cloudflare.com即可选择使用...本地使用ping测试,为cdn的ip,而非你在域名服务商登记的真实ip就达到目的了: ? 这里还需要注意一点,要想实时返回命令结果还需要关闭缓存 ?...虽然cloudflare可以随时清除,但不能手动去做,可开启页面规则,绕过所有缓存。 ? 编辑缓存级别为绕过即可。 ?

4.2K20

WordPress 使用火山引擎 veImageX 进行静态资源 CDN 加速完全指南

veImageX 的镜像回源功能原理 首先我们说一下背后的原理,WPJAM Basic 的 CDN 加速功能是使用 veImageX 的镜像回源的功能实现的,所以为了方便理解和操作,建议使用之前首先要理解镜像回源的原理...WordPress 博客上的图片,CSS,JS 这些静态文件一般都是不会经常修改的,使用镜像回源功能把这些静态文件资源镜像到 veImageX 的服务器上,网站用户访问的时候就直接 veImageX...继续输入要CDN加速的静态文件所在的目录,这里的设置和上面的设置会构成一个正则表达式,然后使用这个正则表达式来替换本地的静态文件地址为CDN上的静态文件地址。...在 veImageX 设置镜像回源的地方,除了自己服务器域名之外,还需要把在七牛设置的 CDN 域名也要添加到备用源站地址,就是利用 veImageX 镜像回源功能会依次匹配的能力去实现的,本地图片删除了...但是这样也非常不好,CSS 文件还是跑服务器本地不能使用 CDN 的加速功能。

2.7K40

一个研发是如何一步一步把一个小需求越搞越大的

[20210826183048.png] 但是,作为一个很厉害的程序员,当然要在本地写代码啦。...开始写接口代码 广大的互联网搬砖工那里学到了,用node写邮件服务,当然是用库啊! 这里用的库名叫 nodemailer 按照示例咱们小心翼翼来一点一点的copy。...npm install nodemailer const nodemailer = require('nodemailer'); const transporter = nodemailer.createTransport...不能写死吧!别人要用怎么办。那得写个配置表呀。 那! [20210827161248.png] 解决方案:开个云数据库,选用特定的配置单。...cloudebase 云存储的使用 先搞下配置。 [20210828112704.png] 因为小草这个项目是不需要登录的,所以这里暂时先搞成公共读公共写。

1.8K164

NPM 介绍

简介 NPM 是随同 NodeJS 一起安装的包管理工具,能解决 NodeJS 代码部署上的很多问题,常见的使用场景有以下几种: 允许用户NPM服务器下载别人编写的第三方包到本地使用。...允许用户NPM服务器下载并安装别人编写的命令行程序到本地使用。 允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。...(global)两种,敲的命令行来看,差别只是有没有 -g 而已,比如 # 本地安装 npm install express # 全局安装 npm install express -g 本地安装...使用 npm cache clear 可以清空NPM本地缓存,用于对付使用相同版本号发布新版本代码的人。...使用淘宝 NPM 镜像 大家都知道国内直接使用 npm 的官方镜像是非常慢的,这里推荐使用淘宝 NPM 镜像

79710
领券