一、验证码的实现
1、需要svg-captcha模块
2、在标签<img src=''>中的src自身带有一个get请求 故可以直接输入接口从服务器端直接获取端口
<body>
<input typt='text'>
<img src='/getpic'> //getpic 接口
</body>
<script>
$(function(){
$.ajax({
type:'get',
url:'/gettext',
data:{
text:$('input').val()
},
datatype:'JSON'
success(res){
if(res。message=='验证码正确'){
console.log('验证正确')
}else{
console.log('验证错误')
}
}
})
})
</script>
const express = require('express')
const app = express()
const svg = require('sve-captcha') //获取验证码模块
const cookiesession = require('cookie-session')
app.use(express.static('./www')) //静态托管
app.listen(8088) //端口
app.use(cookiesession({ //设置session
key:['as','as','sad'], //安全码
maxAge:60*1000*20 // session 保存时间
}))
app.get('/getsvg',(req.res)=>{
let captcha = svg.create({
//验证码类型可以设置
})
req.session.text = captcha.text
res.type('svg') //传输的数据类型
res.send(captcha.data) //传输至接口随机产生的captcha
})
app.get('/gettext'.(req.res)=>{
let {text}=req.query
if(req.session.text.toupcase()==text.toupcase()){
res.send({message:验证码正确})
}else{
res.send({message:验证码错误})
}
})