Json 411从WSO2 API管理器到REST端点的Post响应
我在WSO2 AM中设置了一个调用另一个REST端点的REST端点。打电话时,我收到一个411响应码。请求包含一个JSON主体,内容类型和accepts头被设置为application/JSON。我可以使用相同的参数对WSO2直接访问的支持服务进行卷曲,并且它工作正常。WSO2 AM似乎正在剥离或不发送内容长度Json 411从WSO2 API管理器到REST端点的Post响应,json,rest,wso2,wso2-am,Json,Rest,Wso2,Wso2 Am,我在WSO2 AM中设置了一个调用另一个REST端点的REST端点。打电话时,我收到一个411响应码。请求包含一个JSON主体,内容类型和accepts头被设置为application/JSON。我可以使用相同的参数对WSO2直接访问的支持服务进行卷曲,并且它工作正常。WSO2 AM似乎正在剥离或不发送内容长度 为什么不将内容长度发送到正在访问的REST端点?默认情况下禁用发送内容长度,因为它可能导致性能下降。但是您可以通过在api的插入序列中添加以下内容来启用它。(请参见关于向api添加自定义
为什么不将内容长度发送到正在访问的REST端点?默认情况下禁用发送内容长度,因为它可能导致性能下降。但是您可以通过在api的插入序列中添加以下内容来启用它。(请参见关于向api添加自定义序列的说明)
下面是一个示例
<sequence xmlns="http://ws.apache.org/ns/synapse" name="contentLengthadd">
<property name="COPY_CONTENT_LENGTH_FROM_INCOMING" value="true" scope="axis2"/>
<property name="FORCE_HTTP_CONTENT_LENGTH" scope="axis2" value="true"></property>
</sequence>
此序列将从传入的请求中获取内容长度,并将其从请求头传递到后端
您可以在中了解有关这两个属性的更多信息。默认情况下,发送内容长度被禁用,因为它可能导致性能下降。但是您可以通过在api的插入序列中添加以下内容来启用它。(请参见关于向api添加自定义序列的说明)
下面是一个示例
<sequence xmlns="http://ws.apache.org/ns/synapse" name="contentLengthadd">
<property name="COPY_CONTENT_LENGTH_FROM_INCOMING" value="true" scope="axis2"/>
<property name="FORCE_HTTP_CONTENT_LENGTH" scope="axis2" value="true"></property>
</sequence>
此序列将从传入的请求中获取内容长度,并将其从请求头传递到后端
您可以在中了解有关这两个属性的更多信息,了解您正在尝试的API Manager版本?您发送的是put还是post请求?请在您尝试的API Manager版本上发布版本1.10?您发送的是put还是post请求?post和版本1.10I创建了一个名为WSO2AM--Ext--Out.xml的文件,试图使其成为全局参数。我将上面的XML示例复制到该文件中,更改名称以匹配文件名。我是根据你提到的链接上的文档做的。这样做并重新启动后,我仍然收到411。需要注意的是,我正在APIM商店进行测试,它正在试用中进行卷曲。@MikeH序列应该在插入序列中,而不是在输出序列中。所以序列名应该是WSO2AM--Ext--In。我创建了一个名为WSO2AM--Ext--Out.xml的文件,试图使其成为一个全局参数。我将上面的XML示例复制到该文件中,更改名称以匹配文件名。我是根据你提到的链接上的文档做的。这样做并重新启动后,我仍然收到411。需要注意的是,我正在APIM商店进行测试,它正在试用中进行卷曲。@MikeH序列应该在插入序列中,而不是在输出序列中。因此序列名应该是WSO2AM--Ext--In。