Rumah hujung hadapan web tutorial js node做出登录时图片验证码

node做出登录时图片验证码

Jun 07, 2018 am 11:05 AM
node Kod pengesahan imej Kod pengesahan

这次给大家带来node做出登录时图片验证码,node做出登录时图片验证码的注意事项有哪些,下面就是实战案例,一起来看一下。

实现这里的图形验证码我是用的node里svg-captcha模块,可以全部支持字符和数字,全平台支持,用起来很简单。

1.安装

cnpm i svg-captcha --save
Salin selepas log masuk

2.在使用的地方导入

var svgCaptcha = require('svg-captcha');
Salin selepas log masuk

3.获取验证码

3-1 安装 cookie-parser ,作用是将获取到的session保存到cookie,方便前端访问验证

cnpm i cookie-parser --save

3-2 使用 cookie-parser

const cookieParase = require('cookie-parser');
app.use(cookieParase());
Salin selepas log masuk

这样就可以在项目里使用cookie了

3-3 获取验证码

// 获取验证码
 getCaptcha(req, res, next){
  var captcha = svgCaptcha.create({ 
   // 翻转颜色 
   inverse: false, 
   // 字体大小 
   fontSize: 36, 
   // 噪声线条数 
   noise: 2, 
   // 宽度 
   width: 80, 
   // 高度 
   height: 30, 
  }); 
  // 保存到session,忽略大小写 
  req.session = captcha.text.toLowerCase(); 
  console.log(req.session); //0xtg 生成的验证码
  //保存到cookie 方便前端调用验证
  res.cookie('captcha', req.session); 
  res.setHeader('Content-Type', 'image/svg+xml');
  res.write(String(captcha.data));
  res.end();
 },
Salin selepas log masuk

做到这只是实现了生成验证码的功能,那么要访问呢?

4.编写后台路由

// 获取验证码
router.get('/api/getCaptcha', function(req, res, next) {
 return api.getCaptcha(req, res, next);
})
Salin selepas log masuk

当前端调用 /api/getCaptcha 这个接口的时候,返回验证码信息,是svg格式

5.前端访问

<img src="/api/getCaptcha" alt="captcha" >
Salin selepas log masuk

但是现在我们又有需求了,当点击这个验证码的时候,验证码会刷新

6.实现点击验证码刷新

更改一下刚刚验证码的结果,给他加一个外层a标签,并给他绑定一个点击事件,我这里用了 vue ,所以是 @click ,其他框架同理.

<a href="#" rel="external nofollow" @click="editCaptcha">
  <img src="/api/getCaptcha" alt="" ref="imgYzm">
</a>
Salin selepas log masuk

点击事件 editCaptcha

editCaptcha () {
  this.$refs.imgYzm.src = '/api/getCaptcha?d='+Math.random()
},
Salin selepas log masuk

这样就实现了点击验证码刷新的问题

7.前端验证验证码

刚刚我们在后台得到了验证码,但是前端要怎么验证呢?

记得在3-2的时候我们安装了 cookie-parser ,并且在3-3里将生成的session保存在cookie里,这里我们前端就可以通过访问这个cookie拿到验证码的值了。

为什么要保存在cookie里? 因为后端生成的session我们前端是访问不到的,如果等访问到的话,那还谈什么安全性可言,所以保存一份在cookie里供前端访问。

let captcha = document.cookie.split('=')[1]
  if(this.yzm != captcha){
   return this.$message.warning('验证码错误')
  }
Salin selepas log masuk

最后的前端输入账号密码验证码做登录验证等等我就不多概述了。具体思想就是这样。

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

使用ES6中class模仿Vue做出双向绑定

vue.js+element-ui做出菜单树形结构

Atas ialah kandungan terperinci node做出登录时图片验证码. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah yang perlu saya lakukan jika Google Chrome tidak memaparkan imej kod pengesahan Chrome tidak memaparkan kod pengesahan? Apakah yang perlu saya lakukan jika Google Chrome tidak memaparkan imej kod pengesahan Chrome tidak memaparkan kod pengesahan? Mar 13, 2024 pm 08:55 PM

Apakah yang perlu saya lakukan jika Google Chrome tidak memaparkan imej kod pengesahan? Kadangkala anda memerlukan kod pengesahan untuk log masuk ke halaman web menggunakan Google Chrome. Sesetengah pengguna mendapati bahawa Google Chrome tidak dapat memaparkan kandungan imej dengan betul apabila menggunakan kod pengesahan imej. Apa yang patut dibuat? Editor di bawah akan memperkenalkan cara menangani kod pengesahan Google Chrome yang tidak dipaparkan. Saya harap ia akan membantu semua orang! Pengenalan kaedah: 1. Masukkan perisian, klik butang "Lagi" di penjuru kanan sebelah atas, dan pilih "Tetapan" dalam senarai pilihan di bawah untuk masuk. 2. Selepas memasuki antara muka baharu, klik pilihan "Tetapan Privasi dan Keselamatan" di sebelah kiri. 3. Kemudian klik "Tetapan Laman Web" di sebelah kanan

Mengapa saya tidak boleh menerima kod pengesahan pada telefon saya? Mengapa saya tidak boleh menerima kod pengesahan pada telefon saya? Aug 17, 2023 pm 02:49 PM

Kegagalan menerima kod pengesahan pada telefon mudah alih anda disebabkan oleh masalah rangkaian, masalah tetapan telefon mudah alih, masalah operator telefon mudah alih dan masalah tetapan peribadi. Pengenalan terperinci: 1. Masalah rangkaian Persekitaran rangkaian di mana telefon bimbit berada tidak stabil atau isyarat lemah, yang mungkin menyebabkan kod pengesahan tidak dapat dihantar tepat pada masanya atau fungsi suara telefon mudah alih dimatikan secara tidak sengaja, atau Nombor penghantaran kod pengesahan ditambah ke senarai hitam, menyebabkan kod pengesahan tidak diterima seperti biasa 3. Isu operator telefon mudah alih, operator telefon mudah alih mungkin mengalami kerosakan atau penyelenggaraan, mengakibatkan kod pengesahan tidak dihantar tepat pada masanya, dsb.

Cara menggunakan ekspres untuk mengendalikan muat naik fail dalam projek nod Cara menggunakan ekspres untuk mengendalikan muat naik fail dalam projek nod Mar 28, 2023 pm 07:28 PM

Bagaimana untuk mengendalikan muat naik fail? Artikel berikut akan memperkenalkan kepada anda cara menggunakan ekspres untuk mengendalikan muat naik fail dalam projek nod saya harap ia akan membantu anda!

Bolehkah nombor maya menerima kod pengesahan? Bolehkah nombor maya menerima kod pengesahan? Jan 02, 2024 am 10:22 AM

Nombor maya boleh menerima kod pengesahan Selagi nombor telefon bimbit yang diisi semasa pendaftaran mematuhi peraturan dan nombor telefon bimbit boleh disambungkan seperti biasa, anda boleh menerima kod pengesahan SMS. Walau bagaimanapun, anda perlu berhati-hati apabila menggunakan nombor telefon mudah alih maya Sesetengah tapak web tidak menyokong pendaftaran nombor telefon mudah alih maya, jadi anda perlu memilih pembekal perkhidmatan nombor telefon mudah alih maya biasa.

Panduan Pembangunan PHP: Melaksanakan Log Masuk Kod Pengesahan Panduan Pembangunan PHP: Melaksanakan Log Masuk Kod Pengesahan Jul 01, 2023 am 09:27 AM

Dengan perkembangan Internet dan populariti telefon pintar, fungsi log masuk kod pengesahan diterima pakai oleh semakin banyak laman web dan aplikasi. Log masuk kod pengesahan ialah kaedah log masuk yang mengesahkan identiti pengguna dengan memasukkan kod pengesahan yang betul untuk meningkatkan keselamatan dan mencegah serangan berniat jahat. Dalam pembangunan PHP, melaksanakan fungsi log masuk kod pengesahan mudah tidak rumit dan boleh diselesaikan melalui langkah-langkah berikut. Buat jadual pangkalan data Pertama, kita perlu mencipta jadual dalam pangkalan data untuk menyimpan maklumat kod pengesahan. Struktur jadual boleh mengandungi medan berikut: id: auto-incrementing primary key phone

Kes pemprosesan imej PHP: Bagaimana untuk melaksanakan fungsi kod pengesahan imej Kes pemprosesan imej PHP: Bagaimana untuk melaksanakan fungsi kod pengesahan imej Aug 17, 2023 pm 12:09 PM

Kes pemprosesan imej PHP: Bagaimana untuk melaksanakan fungsi kod pengesahan imej Dengan perkembangan pesat Internet, kod pengesahan telah menjadi salah satu cara penting untuk melindungi keselamatan laman web. Kod pengesahan ialah kaedah pengesahan yang menggunakan teknologi pengecaman imej untuk menentukan sama ada pengguna adalah pengguna sebenar. Artikel ini akan memperkenalkan cara menggunakan PHP untuk melaksanakan fungsi kod pengesahan imej, dan disertakan dengan contoh kod. Pengenalan Kod pengesahan ialah gambar yang mengandungi aksara rawak Pengguna perlu memasukkan aksara dalam gambar untuk lulus pengesahan. Proses utama melaksanakan kod pengesahan termasuk menjana aksara rawak dan melukis aksara ke dalam gambar.

Bagaimana untuk melaksanakan kod pengesahan imej dalam pembangunan API Java Bagaimana untuk melaksanakan kod pengesahan imej dalam pembangunan API Java Jun 18, 2023 am 09:22 AM

Dengan perkembangan pesat teknologi Internet, untuk memastikan keselamatan sistem, kod pengesahan telah menjadi bahagian penting dalam setiap sistem. Antaranya, kod pengesahan gambar digemari oleh pembangun kerana kemudahan penggunaan dan keselamatannya. Artikel ini akan memperkenalkan kaedah khusus untuk melaksanakan kod pengesahan imej dalam pembangunan JavaAPI. 1. Apakah itu kod pengesahan gambar? Kod pengesahan gambar ialah cara pengesahan mesin manusia melalui gambar. Ia biasanya terdiri daripada gabungan gambar rawak yang mengandungi nombor, huruf, simbol, dsb., yang meningkatkan keselamatan sistem. Prinsip kerjanya termasuk

Cara menjana kod pengesahan imej yang boleh dimuat semula menggunakan PHP Cara menjana kod pengesahan imej yang boleh dimuat semula menggunakan PHP Sep 13, 2023 am 11:54 AM

Cara menggunakan PHP untuk menjana kod pengesahan imej yang boleh dimuat semula Dengan pembangunan Internet, untuk mengelakkan serangan berniat jahat dan operasi mesin automatik, banyak tapak web menggunakan kod pengesahan untuk pengesahan pengguna. Satu jenis kod pengesahan yang biasa ialah kod pengesahan imej, yang menghasilkan gambar yang mengandungi aksara rawak dan memerlukan pengguna memasukkan aksara yang betul sebelum meneruskan. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menjana kod pengesahan imej yang boleh dimuat semula dan memberikan contoh kod khusus. Langkah 1: Buat imej kod pengesahan Mula-mula, kita perlu mencipta imej kod pengesahan

See all articles