Closed BG7ZAG closed 6 years ago
在本地node环境下开发时,刷新接口验证码svg图片会更新。但是部署在服务器上怎么访问多次接口svg图片没发生改变,请求这是什么原因呢?谢谢 API地址:https://kc.hcode.xyz/api/code 是这样写的:
` // 获取验证码 const svgCaptcha = 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); } `
`const Router = require('express') const router = Router() const getCode = require('../model/svgCaptcha.js')
router.get('/code', function(req, res, next) { getCode(function(code, img) { //存session用于验证接口获取文字码 req.session.captcha = code let data = {} if (code && img) { data = { code: 200, msg: '获取成功', data: img } } else { data = { code: 400, msg: '获取失败', data: img } }
res.json(data)
})
module.exports = router `
已经解决了,请求中随便加个不相同的值,就可以。 参考:https://xn--nf1a578axkh.xn--fiqs8s/ALYyV
在本地node环境下开发时,刷新接口验证码svg图片会更新。但是部署在服务器上怎么访问多次接口svg图片没发生改变,请求这是什么原因呢?谢谢 API地址:https://kc.hcode.xyz/api/code 是这样写的:
` // 获取验证码 const svgCaptcha = 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); } `
`const Router = require('express') const router = Router() const getCode = require('../model/svgCaptcha.js')
router.get('/code', function(req, res, next) { getCode(function(code, img) { //存session用于验证接口获取文字码 req.session.captcha = code let data = {} if (code && img) { data = { code: 200, msg: '获取成功', data: img } } else { data = { code: 400, msg: '获取失败', data: img } }
})
})
module.exports = router `