| 
					
				 | 
			
			
				@ -34,16 +34,15 @@ public class SmsValidateCodeProcessor implements ValidateCodeProcessor { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private SmsValidateCodeGenerator smsValidateCodeGenerator; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /* 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * (non-Javadoc) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @see 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * com.imooc.security.core.validate.code.ValidateCodeProcessor#create(org. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * springframework.web.context.request.ServletWebRequest) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     *  生成验证码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void create(ServletWebRequest request) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //生成校验码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ValidateCode validateCode = generate(request); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //保存校验码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        save(request, validateCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //发送校验码到手机号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        send(request, validateCode); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -66,8 +65,9 @@ public class SmsValidateCodeProcessor implements ValidateCodeProcessor { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private void save(ServletWebRequest request, ValidateCode validateCode) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject jo = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("code", validateCode.getCode()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("expireTime", validateCode.getExpireTimeString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("code", validateCode.getCode());//保存验证码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("expireTime", validateCode.getExpireTimeString()); //保存超时时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("createTime", validateCode.getCreateTimeString()); //保存超时时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        redisTemplate.opsForValue().set(key(request), jo.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -92,6 +92,7 @@ public class SmsValidateCodeProcessor implements ValidateCodeProcessor { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ValidateCode validateCode = new ValidateCode(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            validateCode.setCode(jo.getString("code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            validateCode.setExpireTimeString(jo.getString("expireTime")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            validateCode.setCreateTimeString(jo.getString("createTime")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return validateCode; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return null; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -99,7 +100,7 @@ public class SmsValidateCodeProcessor implements ValidateCodeProcessor { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 拼凑放在redis的key 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 拼凑放在redis的key  格式 security:oauth2:smsLogin:{手机号} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param request 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -122,12 +123,9 @@ public class SmsValidateCodeProcessor implements ValidateCodeProcessor { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @SuppressWarnings("unchecked") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void validate(ServletWebRequest request) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sessionKey = key(request); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //获取验证码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ValidateCode validateCode = get(request); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String codeInRequest; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //获取请求中的验证码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 |