我在wso2esb中为其中一个租户定义了一个API。在定义API时,此租户会自动获取自己的上下文路径(例如http://127.0.0.1:8280/tenant1/api-identifier/)。
下一步是将此请求转发到http端点(例如http://127.0.0.1:9191/v1/)。但是当查看日志时,esb会尝试将此请求发送到http://127.0.0.1:9191/v1/tenant1/api-identifier/,但无法给出响应。我可以从网址中删除此部分吗?感觉这应该是开箱即用的。
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://ws.apache.org/ns/synapse">
<registry provider="org.wso2.carbon.mediation.registry.WSO2Registry">
<parameter name="cachableDuration">1500</parameter>
</registry>
<taskManager provider="org.wso2.carbon.mediation.ntask.NTaskTaskManager"/>
<sequence name="In">
<log category="TRACE" level="full"/>
<send>
<endpoint key="gov:/HelloWorld"/>
</send>
</sequence>
<sequence name="fault">
<log level="full"/>
</sequence>
<sequence name="main">
<in>
<log/>
<sequence key="conf:/InSecure"/>
</in>
<out>
<send/>
</out>
</sequence>
<sequence name="Out">
<send/>
</sequence>
<sequence name="InSecure">
<log/>
<send>
<endpoint key="gov:/HelloWorld"/>
</send>
</sequence>
<api context="/lensworld.be/hw" hostname="192.168.1.100"
name="HelloWorld" port="9191">
<resource inSequence="InSecure" methods="GET" outSequence="Out"/>
</api>
答案 0 :(得分:2)
尝试删除REST_URL_POSTFIX
属性:
<property name="REST_URL_POSTFIX" action="remove" scope="axis2"/>
来自the docs:
当通过地址端点以RESTful方式发送消息时,此属性的值将附加到目标URL。当您需要在RESTful调用的情况下将上下文附加到目标URL时,这非常有用。如果您使用的是HTTP端点而不是地址端点,请以&#34; uri.var。*&#34;的格式指定变量。而不是使用这个属性。