node生成图片插件的第三方库(svg-captcha)
一、优势
- 不需要安装任何环境,安装直接运行
- 生成图片为svg
- 定制程度高可根据自己的需求更改
二、使用
安装express-session
cnpm install express-session -S
app.js关键代码:
var session = require("express-session") // 导入
/* 创建session中间件 */
app.use(session({
name:'testapp', //..这里的name指的是cookie的name,默认cookie的name是:connect.sid
secret:'keyword cat', // 加密key 可以随意书写
cookie:{maxAge:60000}, // 两次请求的时间差,即超过这个时间再去访问session会失效
resave:false,
saveUninitialized:true
}))
routes/index.js关键代码:
var session = require('express-session');
/* 验证码 */
router.get('/getCode',function(req,res,next){
var codeConfig = {
size:5, // 验证码长度
ignoreChars:'O01i', //..验证码字符中排除O01i
noise:2, // 干扰线条数量
height:44
}
var captcha = svgCaptcha.create(codeConfig)
// console.log('captcha=',captcha)
let x = captcha.text.toLowerCase()
req.session['captcha'] = captcha.text.toLowerCase() // 存session用于验证接口获取文字码
var codeData = {
img:captcha.data
}
res.send(codeData)
})