node與驗證碼
阿新 • • 發佈:2018-06-08
captcha 引入 ext .html GC 驗證碼 tolower pos ESS
最近用node做了一個簡易後臺系統,遇到了很多坑,拿出來分享分享。
先上圖,我們還是按套路出牌。
因為long long ago也用php寫過後臺,php可以自己繪制驗證碼。所以馬上百度一波。
然而發現node貌似沒有類似的騷操作。
所以選擇了網上大多數人用的插件svg-captcha
來來來,上代碼:
api.js:
var svgCaptcha = require(‘svg-captcha‘);//引入插件(驗證碼) ps:可以放在公用的app.js中,我是單獨放在api.js中 router.post(‘/captcha‘,function(req,res,next){ var code = svgCaptcha.create({ // 翻轉顏色 inverse: false, ignoreChars: ‘0o1i‘, // 驗證碼字符中排除 0o1i // 字體大小 fontSize: 36, // 噪聲線條數 noise: 2, // 寬度 width: 120, // 高度 height: 29, color: ‘red‘, }); req.session.captcha = code.text.toLowerCase(); // 特別註意:這裏需要你先自己定義session,否則會報錯 res.send(code.data); });
下面代碼是前端實現渲染:
login.ejs:
$.ajax({
url: "/api/captcha",
type: ‘post‘,
success: function(data) {
$(".yzm_pic").html(data); //關鍵代碼
},
error: function(err) {
console.log(err);
}
})
到這裏,恭喜!你就大功告成。
node與驗證碼