spring cloud 网关session无法获取问题

session 存储后 在调用另外接口无法获取问题

  	request.getSession().setAttribute(Constants.SESSION_PHONE_CODE,code);
	request.getSession().setAttribute(Constants.SERVER_TIME,new Date());
   	request.getSession().setAttribute(Constants.SESSION_PHONE_NUMBER,tel);
  1. 通过request中对session的赋值将对应code给存入后面接口无法获取获取为空
    @PostMapping(Constants.CONTEXT_IGNORE+"/codeLogin")
    @SneakyThrows
    public Ret codeLogin(String tel,String code,String sessionId,HttpServletRequest request){
        if (!StringUtils.isNoneEmpty(tel,code)){
            return Ret.success("参数不能为空");
        }
        String sessionPhoneCode = String.valueOf(request.getSession().getAttribute(Constants.SESSION_PHONE_CODE));
        System.err.println(sessionPhoneCode);
  1. 上述代码中获取为空的这时主要是网关代码中没有加入sensitiveHeaders
zuul:
  retryable: true
  host:
    socket-timeout-millis: 120000
    connect-timeout-millis: 120000
  routes:
    api-a:
      path: /api-app/**
      service-id: service-app
      sensitiveHeaders: "*"
    api-b:
      path: /api-admin/**
      service-id: service-admin
  1. sensitiveHeaders会过滤客户端附带的headers sensitiveHeaders: “*” 则所有不过滤
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值