Node.js 製作驗證碼API
利用 svg-captcha 插件製作驗證碼,首先安裝 svg-captcha 插件:
npm i --save svg-captcha
然後在建一個 svgCaptcha.js 文件,文件內容:
// 獲取驗證碼
constsvgCaptcha = require("svg-captcha");
module.exports = callback => {
let codeConfig = {
size: 5,// 驗證碼長度
ignoreChars: "0o1i",// 驗證碼字元中排除 0o1i
noise: 2,// 干擾線條的數量
height: 45
}
let captcha = svgCaptcha.create(codeConfig);
let sessionCaptcha = captcha.text.toLowerCase();//存session用於驗證介面獲取文字碼
let codeData = {
img:captcha.data
}
callback(sessionCaptcha,codeData);
}
callback返回驗證碼 (sessionCaptcha) 和驗證碼svg圖片 (codeData) ;
使用在需要的API文件里:
constgetCode = require("../model/svgCaptcha.js"); // 這裡引入上面那個模塊
// 獲取驗證碼
exports.getCode = (req, res, next) => {
getCode(function(code,img) {
//存session用於驗證介面獲取文字碼
req.session.captcha = code;
let data = {
code: 200,
msg: "獲取成功",
data: img
}
res.json(data);
})
}
TAG:黃良缽博客 |