A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

4.2.2 redis连接配置
在认证服务的application.yml文件中添加如下配置:
[AppleScript] 纯文本查看 复制代码
spring:   application:  
   name: xc‐service‐ucenter‐auth 
  redis:   
  host: ${REDIS_HOST:127.0.0.1} 
    port: ${REDIS_PORT:6379}   
  timeout: 5000 #连接超时 毫秒  
   jedis:   
    pool:    
     maxActive: 3     
    maxIdle: 3    
     minIdle: 1     
    maxWait: ‐1 #连接池最大等行时间 ‐1没有限制

4.2.3 测试
[AppleScript] 纯文本查看 复制代码
@SpringBootTest @RunWith(SpringRunner.class) public class RedisTest {    
 @Autowired   
  private StringRedisTemplate stringRedisTemplate;  
   @Test 
    public void testRedis(){    
     //定义key  
       String key = "user_token:9734b68f‐cf5e‐456f‐9bd6‐df578c711390";   
      //定义Map    
     Map<String,String> mapValue = new HashMap<>();   
      mapValue.put("id","101");     
    mapValue.put("username","itcast");   
      String value = JSON.toJSONString(mapValue);    
     //向redis中存储字符串    
     stringRedisTemplate.boundValueOps(key).set(value,60, TimeUnit.SECONDS);   
      //读取过期时间,已过期返回‐2       
  Long expire = stringRedisTemplate.getExpire(key);   
      //根据key获取value      
   String s = stringRedisTemplate.opsForValue().get(key);   
      System.out.println(s); 
    } }

4.3.1 需求分析
认证服务需要实现的功能如下:
1、登录接口
前端post提交账号、密码等,用户身份校验通过,生成令牌,并将令牌存储到redis。 将令牌写入cookie。
2、退出接口
校验当前用户的身份为合法并且为已登录状态。
将令牌从redis删除。
删除cookie中的令牌。  
业务流程如下:


4.3.2 Api接口
[AppleScript] 纯文本查看 复制代码
@Api(value = "用户认证",description = "用户认证接口") public interface AuthControllerApi {   
    @ApiOperation("登录")    
 public LoginResult login(LoginRequest loginRequest);    
   @ApiOperation("退出")  
   public ResponseResult logout();   }

4.3.3 配置参数
在application.yml中配置参数

[AppleScript] 纯文本查看 复制代码
auth:  
 tokenValiditySeconds: 1200  
#token存储到redis的过期时间 
  clientId: XcWebApp 
  clientSecret: XcWebApp 
  cookieDomain: localhost  
 cookieMaxAge: ‐1



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马