URL重写中介器WSO2 ESB
每当用户键入URL重写中介器WSO2 ESB,wso2,wso2esb,Wso2,Wso2esb,每当用户键入http://localhost:8280/services/Facebook/sea实际请求应为http://localhost:8280/services/Facebook/search?q=jack。这是我为Facebook代理服务synapse.xml配置的一部分。但它不工作,配置有什么问题 <proxy name="Facebook" transports="https http" startOnLoad="true" trace="disable">
http://localhost:8280/services/Facebook/sea
实际请求应为http://localhost:8280/services/Facebook/search?q=jack
。这是我为Facebook代理服务synapse.xml配置的一部分。但它不工作,配置有什么问题
<proxy name="Facebook" transports="https http" startOnLoad="true" trace="disable">
<target>
<endpoint>
<address uri="http://graph.facebook.com"/>
</endpoint>
<inSequence>
<rewrite>
<rewriterule>
<action value="search?q=jack" regex="sea" type="replace" fragment="host"/>
</rewriterule>
</rewrite>
<log level="full"/>
</inSequence>
<outSequence>
<send/>
</outSequence>
</target>
</proxy>
需要替换的部分位于URL路径中。因此,您应该将fragment属性设置为“path”。应使用单独的操作设置查询部分:
<rewrite>
<rewriterule>
<action value="search" regex="sea" type="replace" fragment="path"/>
<action value="q=jack" type="set" fragment="query"/>
</rewriterule>
</rewrite>