wso2 api 管理器内容长度问题

wso2 api manager content-length issue

我正在使用 WSO2 API MANAGER 版本 1.10.0。我有一个与 Content-Length 设置相关的问题。有两个 api.
一个 api 有 411 错误(需要内容长度) 然后我在 passthru-http.properties 文件中设置 属性 下面。

http.headers.preserve=内容长度

411 错误解决后。但另一个 api 发生异常。

TID: [-1] [] [2016-12-23 16:11:18,946] ERROR         {org.apache.synapse.transport.passthru.SourceHandler} -  Content-Length header already present {org.apache.synapse.transport.passthru.SourceHandler}
org.apache.http.ProtocolException: Content-Length header already present
at org.apache.http.protocol.ResponseContent.process(ResponseContent.java:101)
at org.apache.http.protocol.ImmutableHttpProcessor.process(ImmutableHttpProcessor.java:139)
at org.apache.synapse.transport.passthru.SourceResponse.start(SourceResponse.java:170)
at org.apache.synapse.transport.passthru.SourceHandler.responseReady(SourceHandler.java:193)
at org.apache.http.impl.nio.DefaultNHttpServerConnection.produceOutput(DefaultNHttpServerConnection.java:305)
at org.apache.synapse.transport.http.conn.LoggingNHttpServerConnection.produceOutput(LoggingNHttpServerConnection.java:114)
at org.apache.synapse.transport.passthru.ServerIODispatch.onOutputReady(ServerIODispatch.java:87)
at org.apache.synapse.transport.passthru.ServerIODispatch.onOutputReady(ServerIODispatch.java:39)
at org.apache.http.impl.nio.reactor.AbstractIODispatch.outputReady(AbstractIODispatch.java:150)
at org.apache.http.impl.nio.reactor.BaseIOReactor.writable(BaseIOReactor.java:180)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:342)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:316)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:277)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:105)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:586)
at java.lang.Thread.run(Thread.java:745)

因此,由于 Content-Length 配置,两个 API 不能同时 运行。

ps。

我看到下面url.

WSO2 API Manager 1.10 issue

我在 /repository/deployment/server/synapse-configs/default/sequences 文件夹中修改了 main.xml

它不适合我。

您可以通过两种方法全局禁用分块。

1) 编辑速度模板文件并添加这个。

<property name="DISABLE_CHUNKING" value="true" scope="axis2"/> 

请参阅 this blog 了解如何执行此操作。

2) 添加一个新的中介序列。 See this.