const imageCaptch = require('svg-captcha') const express = require('express') const session = require('express-session') const bodyParser = require('body-parser') const app = express() app.all('*', (req, res, next) => { res.header("Access-Control-Allow-Origin", req.headers.origin); //设置来源 res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS"); res.header("Access-Control-Max-Age", "604800000"); res.header("Access-Control-Allow-Credentials", true); res.header("X-Powered-By", ' 3.2.1'); // res.header("Content-Type", "application/json;charset=utf-8"); next(); }); app.use(session({ secret: 'captcha', cookie: { maxAge: 300000 }, saveUninitialized: true, resave: true, name: 'imageVerification' })) app.use(bodyParser.urlencoded({extended:false})) app.get('/getImage', (req, res) => { const svgimg = imageCaptch.create({ size: 4, ignoreChars: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', noise: 2, color: true }) req.session.imgtext = svgimg.text res.send(svgimg.data) }) app.post('/postImagetext', (req, res) => { if(req.session.imgtext){ if(req.session.imgtext == req.body.imgtexter){ res.send({ seccess: '验证码正确' }) }else{ res.status(202).send({ err: '验证码错误' }) } }else{ res.status(203).send({ err: '未获取验证码' }) } }) app.listen('9000', () => { console.log('service listing port 9000') })