pars-h5-2021/src/main/java/com/szxgl/vote2021/controller/VerificationCodeController.java
2021-11-16 09:24:22 +08:00

48 lines
1.8 KiB
Java

package com.szxgl.vote2021.controller;
import com.szxgl.vote2021.utils.RedisUtil;
import com.szxgl.vote2021.utils.VerifyUtil;
import lombok.extern.java.Log;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
@Slf4j
@RestController
@RequestMapping("/code")
public class VerificationCodeController {
public static final String RANDOMCODEKEY= "RANDOMREDISKEY";//放到session中的key
@Autowired
private RedisUtil redisUtil;
/**
* @author XXXXXX
* @date 2018年7月11日
* @desc 图形验证码生成
*/
@RequestMapping("/createImg")
public void createImg(HttpServletRequest request, HttpServletResponse response) throws Exception {
try {
response.setContentType("image/jpeg");//设置相应类型,告诉浏览器输出的内容为图片
response.setHeader("Pragma", "No-cache");//设置响应头信息,告诉浏览器不要缓存此内容
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expire", 0);
VerifyUtil randomValidateCode = new VerifyUtil();
randomValidateCode.getRandcode(request, response);//输出验证码图片
//将生成的随机验证码存放到redis中
redisUtil.set(RANDOMCODEKEY,request.getSession().getAttribute(RANDOMCODEKEY),Long.parseLong("60"));
}catch (Exception e){
log.error("获取验证码异常:", e);
}
}
}