Feign远程调用报请求头异常
在做微信支付时,线上稳定允许了一段时间,因为更改了网关,在支付完成进行进行回调时,feign远程调用服务出现请求头异常,去git查看issue得到需配置请求头,故记录一下。
代码:
/**
* @description: 设置feign请求头
* @author: cc
* @date: 2020/10/27 15:01
*/
@Configuration
public class FeignConfiguration implements RequestInterceptor {
@Override
public void apply(RequestTemplate requestTemplate) {
HttpServletRequest request = SpringContextUtils.getHttpServletRequest();
Enumeration<String> headerNames = request.getHeaderNames();
if (headerNames != null) {
while (headerNames.hasMoreElements()) {
String name = headerNames.nextElement();
String values = request.getHeader(name);
requestTemplate.header(name, values);
}
}
//这里设置请求头
requestTemplate.header("content-type", "application/json");
}
}
加入如上配置即可解决请求头问题