源生Node.js注册邮箱激活说明详解
这次给大家带来源生Node.js注册邮箱激活说明详解,源生Node.js注册邮箱激活的注意事项有哪些,下面就是实战案例,一起来看一下。
在做自己的node项目极客教程时,需要开发一个注册邮箱激活的功能,这个功能非常常见,当我们注册一个账号时,肯定会有这步,下面看下如何实现这个功能。
1. 注册邮箱
先注册一个支持发送验证邮件的邮箱,我这里注册的是网易的163邮箱,所以下面都是以163邮箱作为发件邮箱
注册成功后进行登录,然后点击导航栏的设置,选择POP3/SMTP/IMAP,开启POP3/SMTP/IMAP服务,设置授权码就可以了。
2. 下载nodemailer插件
在命令行输入:npm install --save nodemailer
3. 编写发送邮件代码
3.1 对发送激活邮件代码进行封装,然后导出:
//email.js // 引入 nodemailer const nodemailer = require('nodemailer'); // 创建一个SMTP客户端配置 const config = { host: 'smtp.163.com', port: 465, auth: { user: 'xxxx@163.com', //刚才注册的邮箱账号 pass: 'xxxxxx' //邮箱的授权码,不是注册时的密码 } }; // 创建一个SMTP客户端对象 const transporter = nodemailer.createTransport(config); // 发送邮件 module.exports = function (mail){ transporter.sendMail(mail, function(error, info){ if(error) { return console.log(error); } console.log('mail sent:', info.response); }); };
3.2 进行测试:
//sendtest.js var send = require('./email.js'); // 创建一个邮件对象 var mail = { // 发件人 from: '极客教程 <xxxx@163.com>', // 主题 subject: '[极客教程]激活邮箱账号', // 收件人 to: 'xxxx@qq.com', // 邮件内容,HTML格式 text: `尊敬的${user.name},您好!点击链接即可激活您的极客教程 网账号,http://localhost:3000/checkCode?name=${user.name}&code=${user.code}为保障您的帐号安全,请在24小时内点击该链接,您也可以将链接复制到浏览器地址栏访问。 若如果您并未尝试修改密码,请忽略本邮件,由此给您带来的不便请谅解。本邮件由系统自动发出,请勿直接回复!` //接收激活请求的链接 }; send(mail);
成功就可以在测试的邮箱看到所发的信息。
4. 验证步骤
简单的讲一下如何实现邮箱验证。
1 . 在自己定义的数据库用户数据结构中一定要有激活码、过期时间、是否已经激活的字段,用于在激活时进行判断;
{ code: String, //激活码,格式自己定义 date: Number, //过期日期,过期后不能激活 islive: Boolean //判断是否激活 }
2 . 发送激活链接,其中包含用户名和激活码,如下面这样:
// 创建一个邮件对象 var mail = { // 发件人 from: '极客教程 <xxxx@163.com>', // 主题 subject: '[极客教程]激活邮箱账号', // 收件人 to: 'xxxx@qq.com', // 邮件内容,HTML格式 text: `尊敬的${user.name},您好!点击链接即可激活您的极客教程 网账号,http://localhost:3000/checkCode?name=${user.name}&code=${user.code}为保障您的帐号安全,请在24小时内点击该链接,您也可以将链接复制到浏览器地址栏访问。 若如果您并未尝试修改密码,请忽略本邮件,由此给您带来的不便请谅解。本邮件由系统自动发出,请勿直接回复!` //接收激活请求的链接 }; send(mail);
3 . 响应激活请求,根据激活链接的用户名进行查找,若用户存在则判断激活码是否一致,并判断激活码是否过期,全部正确则改变激活状态,此时激活成功,如下代码:
// check email code exports.checkCode = function (req, res){ var username = req.query.name; var code = req.query.code; User.findOne({name: username}, function (err, user){ if (user.code === code && (user.date - Date.now()) > 0){ User.update({name: username}, {islive: true}, function (err){ if (err){ res.json({error: true}) }else{ console.log(user) res.json({ok: true}) } }); }else{ res.json({ email: user.mail, failure: true }) } }); }
5. 遇到的问题
开发中遇到如下问题:
{ [AuthError: Invalid login - 535 Error: authentication failed]
name: ‘AuthError',
data: ‘535 Error: authentication failed',
stage: ‘auth' }
smtp服务器验证不通过,因为网易的邮箱有个授权限制,一定要好好检查你注册邮箱时的账号和授权码。
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
Atas ialah kandungan terperinci 源生Node.js注册邮箱激活说明详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Dalam proses kerja komputer, perisian pejabat sering digunakan, tetapi sebaik sahaja pejabat dibuka, gesaan tetingkap wizard pengaktifan muncul Bagaimana untuk menutupnya? Adakah terdapat cara untuk mematikan sepenuhnya gesaan wizard pengaktifan? Malah, operasinya sangat mudah, anda boleh mengikuti kaedah editor. 1. Gunakan kombinasi kekunci Windows + R untuk menutup Wizard Pengaktifan Excel 1. Pertama, gunakan kekunci Windows + kekunci pintasan R untuk membuka tetingkap jalankan 2. Masukkan "excel/regserver" dalam tetingkap jalankan, dan kemudian tekan kekunci Enter; 3. Tunggu sebentar, dan anda akan melihat kotak hitam muncul dengan mesej "Pendaftaran Berjaya" dipaparkan.

Sistem Win10 menyediakan fungsi yang lebih berkuasa dan lengkap, ditambah dengan kaedah operasinya yang mudah, membolehkan lebih ramai pengguna memilih untuk memasang sistem pengendalian ini Walau bagaimanapun, ramai pengguna telah menghadapi banyak ralat yang tidak diketahui semasa pemasangan bahawa pengaktifan Win10 gagal dan kod ralat "0xc0000022" digesa Di bawah, editor akan membawakan anda tutorial grafik untuk menyelesaikan masalah kegagalan pengaktifan dan kod ralat "0xc0000022". Sejak Microsoft mengeluarkan win10, pengguna telah menantikannya. Oleh itu, ramai pengguna telah memasang win10, dan untuk menjadi lebih sempurna, pengaktifan diperlukan, bagaimanapun, baru-baru ini, beberapa pengguna win10 telah gagal untuk mengaktifkan pada komputer mereka dan meminta kod ralat 0xc0000022

Ramai rakan masih tidak tahu cara mengaktifkan cad2020, jadi editor di bawah akan menerangkan tutorial pengaktifan cad2020. Rakan yang memerlukan perlu melihatnya. 1. Klik dua kali pada [ikon CAD2020] pada desktop untuk memaparkan tetapan tersuai pemindahan. Klik ikon [tanda]. 2. Anda boleh klik [Ya] atau [Tidak]. 3. Apabila [AutoCAD-DWG Association] muncul, klik yang pertama. 4. Pilih [Pengguna Tunggal] dan klik [Masukkan Nombor Siri]. 5. Klik [Saya setuju]. 6. Klik [Aktifkan]. 7. Nombor siri: [666-69696969], masukkan kunci produk: [001L1], klik [Seterusnya]. 8. Semak saya ada Aut

Memandangkan mengaktifkan PyCharm Professional memerlukan pembelian lesen, proses pengaktifan tidak mengambil masa satu minit sahaja untuk diselesaikan. Semasa proses mengaktifkan PyCharm Professional Edition, anda biasanya perlu menggunakan kunci lesen dan kod pengaktifan. Jika anda mempunyai kunci lesen dan kod pengaktifan yang sah, anda boleh mengaktifkan PyCharm Professional Edition dengan mengikuti langkah berikut: Buka perisian PyCharm dan pilih "Bantuan" - "Daftar" dalam bar menu. Dalam kotak dialog pop timbul, pilih "Lesen

Apabila kami tidak lagi mahu menggunakan Edisi Perkhidmatan Jangka Panjang Win10 Enterprise 2016, kami boleh memilih untuk beralih kepada Edisi Profesional Kaedahnya juga sangat mudah. Kami hanya perlu menukar beberapa kandungan dan memasang imej sistem. Cara menukar versi perkhidmatan jangka panjang win10 enterprise 2016 kepada versi profesional 1. Tekan win+R, dan kemudian masukkan "regedit" 2. Tampal laluan berikut terus dalam bar alamat di atas: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT \CurrentVersion3 , kemudian cari EditionID dan gantikan kandungan dengan "profesional" untuk mengesahkan

Rakan yang biasa dengan sistem MIUI harus tahu bahawa ia mempunyai banyak operasi yang mudah, seperti dail satu sentuhan pada desktop, slaid tiga jari ke bawah untuk mengambil tangkapan skrin, dsb. Apa yang saya ingin perkenalkan kepada anda hari ini ialah operasi tekan lama MIUI14 Contohnya, tekan dan tahan ikon aplikasi pada desktop untuk memaparkan menu lanjutan Tekan dan tahan butang kuasa pada mana-mana antara muka untuk membangunkan rakan sekelas Xiao Ai. Tekan lama boleh merealisasikan fungsi seperti fungsi langsung dan permulaan cepat. Bagaimana untuk mengaktifkan Xiaomi Xiaoai Classmate? Dalam tetapan telefon, cari dan klik "Xiaomi Xiaoai Classmate". Kemudian masukkan antara muka Xiaoai dan klik "Pembantu Suara". Kemudian pada antara muka pembantu suara, klik butang di sebelah kanan "Voice Wake" untuk menghidupkannya.

Kunci pengaktifan Windows 10 ialah satu set nombor siri yang perlu dimasukkan semasa memasang sistem pengendalian Windows 10 Ia digunakan untuk mengesahkan kesahihan sistem dan membuka kunci semua fungsi dalam sistem pengendalian. Bagi kebanyakan pengguna, mengaktifkan sistem Windows 10 mungkin menghadapi beberapa kesukaran, jadi artikel ini akan memperkenalkan beberapa kaedah dan langkah berjaga-jaga untuk mendapatkan kunci pengaktifan Windows 10. Cara mendapatkan kunci pengaktifan Windows 10 1. Beli kunci tulen Beli kunci pengaktifan Windows 10 tulen

Perkongsian panduan pengaktifan PyCharm: Jadikan pengaturcaraan anda lebih selesa Bagi kebanyakan pembangun Python, PyCharm ialah persekitaran pembangunan bersepadu (IDE) yang biasa digunakan yang menyediakan fungsi berkuasa untuk memudahkan penulisan, penyahpepijatan dan pengurusan kod Python. Walau bagaimanapun, ramai pengguna mungkin menghadapi masalah untuk mengaktifkan PyCharm, terutamanya untuk pemula. Dalam artikel ini, kami akan berkongsi strategi pengaktifan PyCharm untuk membantu anda menikmati pengaturcaraan dengan lebih mudah. Langkah 1: Muat turun PyCharm dahulu
