OpenFeign 拦截器

作用:远程调用微服务,添加拦截器,一般对请求头进行处理

一、分类

1、请求拦截器

2、响应拦截器

二、请求拦截器使用

1、创建拦截器类

interceptor.TokenRequestInterceptor.class

2、实现请求拦截器接口

 implements RequestInterceptor

3、注入,添加组件

@Component

4、通过requestTemplate实现

5、案例

package com.wt.order.interceptor;

import feign.RequestInterceptor;
import feign.RequestTemplate;
import org.springframework.stereotype.Component;

import java.util.UUID;

@Component
public class TokenRequestInterceptor implements RequestInterceptor {
    @Override
    public void apply(RequestTemplate requestTemplate) {
        requestTemplate.header("token", UUID.randomUUID().toString());
    }
}

 三、拦截器作用范围

1、全局

拦截类添加 @Component组件

2、局部

feign yaml文件,添加 request-interceptors ,拦截器单独作用在 services-product微服务

spring:
  cloud:
    openfeign:
      client:
        config:
          default:
            logger-level: full
            connect-timeout: 100000
            read-timeout: 600000
          services-product: # 微服务名称
            connect-timeout: 1000 # 单位毫秒
            read-timeout: 5000
            request-interceptors:
              - com.wt.order.interceptor.TokenRequestInterceptor  # 单独

 

posted @ 2025-06-09 20:58  市丸银  阅读(171)  评论(0)    收藏  举报