功能
某个rest接口是公开的,它的feign服务的接口需要授权
重写一个HttpServletRequestWrapper,实现模拟登录之后把header头进行填充
接口请求上下文里的token,通过Feign拦截器转给每个feign请求上下文
完成对feign接口的自动授权访问
重写HttpServletRequestWrapper
/**
* 自定义的请求上下文.
*/
public class CustomHttpServletRequest extends HttpServletRequestWrapper {
private Map<String, String> headers = new HashMap<>();
public CustomHttpServletRequest(HttpServletRequest request) {
super(request);
}
public void addHeader(String name, String value) {
headers.put(name, value);
}
@Override
public String getHeader(String name) {
String value = super.getHeader(name);
if (headers.containsKey(name)) {
value = headers.get(name);
}
return value;
}
@Override
public Enumeration<String> getHeaderNames() {
List<Stri