首頁 web前端 js教程 基於Node.js實作nodemailer郵件發送_node.js

基於Node.js實作nodemailer郵件發送_node.js

May 16, 2016 pm 03:17 PM
node.js 郵件

Nodemailer是一個簡單易用的Node.js郵件發送元件,具體操作如下

1、安裝nodemailer

npm install nodemailer --save

登入後複製

2、特點

Nodemailer的主要特點包括:

  • 支援Unicode編碼
  • 支援Window系統環境
  • 支援HTML內容與一般文字內容
  • 支援附件(傳送大附件)
  • 支援HTML內容嵌入圖片
  • 支援SSL/STARTTLS安全的郵件寄送
  • 支援內建的transport方法和其他外掛實作的transport方法
  • 支援自訂外掛程式處理訊息
  • 支援XOAUTH2登入驗證

以上的功能特點,已經涵蓋了大部分的發郵件的需求了,接下來就讓我們動手開始寫程式吧。

3、簡單範例

這是一個完整的例子來發送電子郵件以明文和HTML本體

var nodemailer = require('nodemailer');

// create reusable transporter object using the default SMTP transport
var transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com');

// setup e-mail data with unicode symbols
var mailOptions = {
  from: 'Fred Foo &#128101; <foo@blurdybloop.com>', // sender address
  to: 'bar@blurdybloop.com, baz@blurdybloop.com', // list of receivers
  subject: 'Hello &#10004;', // Subject line
  text: 'Hello world &#128052;', // plaintext body
  html: '<b>Hello world &#128052;</b>' // html body
};

// send mail with defined transport object
transporter.sendMail(mailOptions, function(error, info){
  if(error){
    return console.log(error);
  }
  console.log('Message sent: ' + info.response);
});

登入後複製

4、常見錯誤

{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!]
 name: 'AuthError',
 data: '454 Authentication failed, please open smtp flag first!',
 stage: 'auth' }
登入後複製

錯誤原因: 帳號未設定該服務
解決方案: QQ信箱 -> 設定 -> 帳號 -> 開啟服務:POP3/SMTP服務

{ [SenderError: Mail from command failed - 501 mail from address must be same as authorization user]
 name: 'SenderError',
 data: '501 mail from address must be same as authorization user',
 stage: 'mail' }
登入後複製

錯誤原因: 寄件帳號與認證帳號不同,即使用者名稱和密碼不符。

以上就是本文的全部內容,希望對大家的學習有所幫助。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1663
14
CakePHP 教程
1420
52
Laravel 教程
1315
25
PHP教程
1266
29
C# 教程
1239
24
Outlook郵件遺失從控制台在Windows 11 Outlook郵件遺失從控制台在Windows 11 Feb 29, 2024 pm 03:16 PM

Windows11的控制台中是否缺少Outlook郵件圖示?這一意外情況在一些依賴OutlookMail滿足通訊需求的個人中引起了困惑和擔憂。為什麼我的Outlook電子郵件沒有顯示在控制台中?控制台中沒有Outlook郵件圖示可能有幾個可能的原因:Outlook未正確安裝。從MicrosoftStore安裝Office應用程式不會將郵件小程式新增至控制台。 mlcfg32.cpl檔案在控制面板中的位置遺失。登錄中的mlcfg32.cpl檔案路徑不正確。作業系統目前未配置為運行此應用程式

Word郵件合併列印空白頁 Word郵件合併列印空白頁 Feb 19, 2024 pm 04:51 PM

如果您發現在使用Word列印郵件合併文件時出現空白頁,這篇文章將對您有所幫助。郵件合併是一項便捷的功能,讓您能夠輕鬆建立個人化文件並傳送給多個收件者。在MicrosoftWord中,郵件合併功能備受推崇,因為它能夠幫助使用者節省手動為每個收件者複製相同內容的時間。為了列印郵件合併文檔,您可以轉到郵件標籤。但有些Word使用者反映,在嘗試列印郵件合併文件時,印表機會列印空白頁或完全不列印。這可能是由於格式設定不正確或印表機設定問題。嘗試檢查文檔和印表機設置,確保列印前預覽文檔,以確保內容正確。如果

一文聊聊Node中的記憶體控制 一文聊聊Node中的記憶體控制 Apr 26, 2023 pm 05:37 PM

基於無阻塞、事件驅動建立的Node服務,具有記憶體消耗低的優點,非常適合處理海量的網路請求。在海量請求的前提下,就需要考慮「記憶體控制」的相關問題了。 1. V8的垃圾回收機制與記憶體限制 Js由垃圾回收機

告別 Windows 11 中的遠端郵件槽協議 告別 Windows 11 中的遠端郵件槽協議 Apr 14, 2023 pm 10:28 PM

我們最近一直在談論微軟計劃添加到其最新作業系統Windows11中的許多功能。但是,不要以為微軟只會增加什麼也不收回。事實上,這家軟體巨頭開始刪除相當多的舊功能。在宣布計劃在Windows12發布之前停用MSDT功能後,雷德蒙開發人員帶來了更多的壞消息。我們實際上是在談論遠端郵件槽舊版工具。當我們說您實際上想知道這一點時,請相信我們。 Microsoft已開始在內部版本25314中棄用此功能我們相信您還記得,就在幾天前,微軟在其新的金絲雀頻道發布了內部版本25314。上述版本包含許多新功能

如何修復 Outlook 電子郵件卡在寄件匣問題 如何修復 Outlook 電子郵件卡在寄件匣問題 May 01, 2023 am 10:01 AM

最近,許多用戶回報了Outlook郵件卡在寄件匣中的問題。即使多次嘗試發送電子郵件,問題也沒有解決。當您看到此問題並檢查您的寄件匣資料夾時,該訊息將卡在那裡。電子郵件卡在Outlook寄件箱中的可能原因是:電子郵件中的附件超過了大小限制,這會減慢發送過程。郵件伺服器的Outlook帳號驗證問題Outlook或郵件伺服器離線Outlook中的傳送/接收設定不正確。其他一些軟體正在使用Outlook資料檔。防毒軟體會掃描傳出的電子郵件。如果這個問題一直困擾著您並且您無法發送電子郵件

PHP非同步發送郵件:避免長時間等待郵件發送完成。 PHP非同步發送郵件:避免長時間等待郵件發送完成。 Sep 19, 2023 am 09:10 AM

PHP非同步發送郵件:避免長時間等待郵件發送完成。導言:在Web開發中,發送郵件是常見的功能之一。但是,由於郵件發送需要與伺服器進行通信,往往會導致用戶在等待郵件發送完成的過程中出現長時間的等待。為了解決這個問題,我們可以使用PHP非同步發送郵件的方式來優化使用者體驗。本文將介紹如何透過具體的程式碼範例實現PHP非同步發送郵件,並避免長時間的等待。一、理解異步發送郵件

PHP郵件追蹤功能:了解使用者對郵件的行為和回饋。 PHP郵件追蹤功能:了解使用者對郵件的行為和回饋。 Sep 19, 2023 am 08:51 AM

PHP郵件追蹤功能:了解使用者對郵件的行為和回饋在現代社會中,電子郵件已成為人們日常生活和工作中不可或缺的一部分。對企業來說,發送郵件是與客戶溝通、推廣產品或服務的重要方式之一。然而,一封郵件被發送出去後,我們如何知道它是否被收到、被讀取,或者用戶對郵件內容有何反應?這時,郵件追蹤功能就顯得格外重要了。郵件追蹤功能可以幫助我們了解使用者對郵件的行為和回饋

如何在 iPhone 和 iPad 上的郵件應用程式中將 Gmail 設定為刪除而不是存檔 如何在 iPhone 和 iPad 上的郵件應用程式中將 Gmail 設定為刪除而不是存檔 Apr 13, 2023 pm 02:34 PM

您是否注意到,當您嘗試在 iOS 上刪除 Gmail 中的郵件時,您只會看到存檔選項?繼續閱讀以了解如何在 iPhone 上刪除 Gmail,而不是在郵件應用程式中存檔。更改使用iPhone 和 iPad上的郵件應用程式歸檔 Gmail 電子郵件的預設選項的設定完全隱藏在設定中,但一旦你知道要去哪裡,它就可以快速更改。請記住,本教學適用於透過 iPhone 和 iPad 上的 Apple 郵件應用程式使用 Gmail 的用戶。另一種選擇是在 iPhone/iPad 上使用 Gmail 應用程式。您甚至

See all articles