Hi guys. I've checked the situation described in this issue and the problem 
indeed exists.
Maybe we can move the action of actual sending file body into 
org.apache.servicecomb.common.rest.AbstractRestInvocation#onExecuteHttpServerFiltersFinish,
 and in 
org.apache.servicecomb.common.rest.filter.inner.ServerRestArgsFilter#beforeSendResponseAsync
 the file body is only added into responseEx?


Yours sincerely


Yao Haishi
[email protected]



--------- 转发邮件信息 ---------

发件人: zhaoyan <[email protected]>
发送日期: 2019年5月8日 10:51
发送至: apache/servicecomb-java-chassis 
<[email protected]>
抄送人: Subscribed <[email protected]>
主题: [apache/servicecomb-java-chassis] 
ServerRestArgsFilter可能提前返回响应,导致后面的Filter无效 (#1201)

问题描述:

org.apache.servicecomb.common.rest.filter.inner.ServerRestArgsFilter#beforeSendResponseAsync

当Object body = response.getResult();是Part类型的时候,导致响应提前返回,

从而后面的Filter滞后执行,而导致可能的错误。(比如增加Header的逻辑,就没有用了)

if (Part.class.isInstance(body)) {

            return responseEx.sendPart((Part)body);

        }



—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Reply via email to