node-express生成图片验证码

node生成图片插件的第三方库(svg-captcha)

一、优势

  1. 不需要安装任何环境,安装直接运行
  2. 生成图片为svg
  3. 定制程度高可根据自己的需求更改

二、使用
安装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)

})

node-express生成图片验证码_第1张图片

你可能感兴趣的:(node)