mkopylec / charon-spring-boot-starter

Reverse proxy implementation in form of a Spring Boot starter.
Apache License 2.0
240 stars 54 forks source link

response header [Content-Disposition] has been removed from the response #140

Open linjzy opened 1 year ago

linjzy commented 1 year ago

2023-06-05 10:54:20 [http-nio-8085-exec-7] WARN o.a.coyote.http11.Http11Processor - The HTTP response header [Content-Disposition] with value [filename=背景图1.jpg] has been removed from the response because it is invalid java.lang.IllegalArgumentException: The Unicode character [背] at code point [65,533] cannot be encoded as it is outside the permitted range of 0 to 255 at org.apache.tomcat.util.buf.MessageBytes.toBytesSimple(MessageBytes.java:290) at org.apache.tomcat.util.buf.MessageBytes.toBytes(MessageBytes.java:261) at org.apache.coyote.http11.Http11OutputBuffer.write(Http11OutputBuffer.java:389) at org.apache.coyote.http11.Http11OutputBuffer.sendHeader(Http11OutputBuffer.java:368) at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1049) at org.apache.coyote.AbstractProcessor.action(AbstractProcessor.java:376) at org.apache.coyote.Response.action(Response.java:208) at org.apache.coyote.http11.Http11OutputBuffer.doWrite(Http11OutputBuffer.java:187) at org.apache.coyote.Response.doWrite(Response.java:613) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:334) at org.apache.catalina.connector.OutputBuffer.appendByteArray(OutputBuffer.java:750) at org.apache.catalina.connector.OutputBuffer.append(OutputBuffer.java:677) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:382) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:360) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:96) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89) at com.github.mkopylec.charon.forwarding.HttpResponseMapper.setBody(HttpResponseMapper.java:26) at com.github.mkopylec.charon.forwarding.HttpResponseMapper.map(HttpResponseMapper.java:13) at com.github.mkopylec.charon.forwarding.ReverseProxyFilter.doFilterInternal(ReverseProxyFilter.java:48) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:894) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:833)

mkopylec commented 1 year ago

Please provide more details. Why do you think the issue is caused by charon?