OkHttp全局拦截器设置token超时重新获取

本文介绍了在OkHttp中如何设置全局拦截器处理token超时问题。通过拦截器,在每次请求前检查token是否过期,过期则自动刷新。文中提到避免在拦截器中直接注入Service和RedisUtil,防止因Spring上下文未加载导致的null错误。配置OkHttp时,需将拦截器作为一个独立bean添加到客户端,以确保拦截器的正确加载和执行。
摘要由CSDN通过智能技术生成

Feign客户端请求远程服务接口时,需要携带token进行认证(详见《微服务迁移记(六):集成jwt保护微服务接口安全》),token有超时时间设置,当超时后,需要重新刷新token。如果每个接口都去判断,那就费事了,最好的办法是在拦截器里做。我这里使用的是OkHttp,新增一个OkHttpInterceptor的拦截器:

@Slf4j
public class OkHttpInterceptor implements HandlerInterceptor,Interceptor {
        @Autowired
    private ApiInitService apiInitService;
    @Autowired
    private RedisUtil redisUtil;
    @Value("${app_id}")
    String app_id;
    @Value("${app_secret}")
    String app_secret;

    @Override
    public Response intercept(Chain chain) throws IOException {
        log.info("进入okhttp拦截器");
        Request request = ch
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值