This commit is contained in:
linfso 2024-12-10 22:54:34 +08:00
parent b0fc5cfe29
commit b6d06b9323

View File

@ -21,9 +21,21 @@ public class FeignErrorDecoder extends ErrorDecoder.Default implements RequestIn
@Override
public void apply(RequestTemplate requestTemplate) {
Map<String,String> headers = getHeaders(getHttpServletRequest());
for(String headerName : headers.keySet()){
requestTemplate.header(headerName, getHeaders(getHttpServletRequest()).get(headerName));
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder
.getRequestAttributes();
HttpServletRequest request = attributes.getRequest();
Enumeration<String> headerNames = request.getHeaderNames();
if (headerNames != null) {
while (headerNames.hasMoreElements()) {
String name = headerNames.nextElement();
String values = request.getHeader(name);
// 跳过 content-length,解决too many bites written的问题
if (name.equalsIgnoreCase("content-length")){
continue;
}
requestTemplate.header(name, values);
}
log.info("feign interceptor header:{}",requestTemplate);
}
}