OpenFeign实现自定义Http请求头
作者:qq_33987908
这篇文章主要介绍了OpenFeign实现自定义Http请求头方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
实现feign.RequestInterceptor接口
并实现apply方法,在该方法里可以对请求做一些处理。
我们可以在里边添加一些自定义的请求头:
package com.ljc.conf;
import feign.RequestInterceptor;
import feign.RequestTemplate;
import java.util.HashMap;
import java.util.Map;
public class MyHeaderInterceptor implements RequestInterceptor {
private Map<String, String> headers = new HashMap<>();
public MyHeaderInterceptor() {
addHeader("myHeader", "myHeaderValue");
}
@Override
public void apply(RequestTemplate template) {
headers.forEach((k, v) -> {
template.header(k, v);
});
}
public void addHeader(String key, String value) {
headers.put(key, value);
}
}
然后再把这个自定义的openFeign的Request拦截器注册到IOC容器中:

关于feign.RequestInterceptor接口
是OpenFeign中用于进行一些请求前置处理的接口,我们可以根据不同的职责划分自定义多个RequestInterceptor,
这些RequestInterceptor的apply方法在请求前都会被执行一遍,具体源码如下:


总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
