Rest WSO2 HTTP响应

Rest WSO2 HTTP响应,rest,wso2,wso2esb,Rest,Wso2,Wso2esb,我正在使用WSO2发送rest请求,这是我能够做到的。但是在我向客户发送响应之前,我想了解一些逻辑。 后端Rest服务以响应字符串的形式返回“Successful”。我有一个Java代码用来做这件事,我想在WSO2中使用相同的逻辑。逻辑很简单 1.如果 HTTP状态大于等于200,小于300,然后resonseStr.equalsIgnoreCase(“成功”) 返回“RetCode=C;Message=Success” 其他的 返回“RetCode=F;Message=Failed,因为Ite

我正在使用WSO2发送rest请求,这是我能够做到的。但是在我向客户发送响应之前,我想了解一些逻辑。 后端Rest服务以响应字符串的形式返回“Successful”。我有一个Java代码用来做这件事,我想在WSO2中使用相同的逻辑。逻辑很简单 1.如果 HTTP状态大于等于200,小于300,然后resonseStr.equalsIgnoreCase(“成功”) 返回“RetCode=C;Message=Success” 其他的 返回“RetCode=F;Message=Failed,因为Itegration异常”

ResponseST是来自后端Rest服务的响应。 我的API如下所示:

    <api xmlns="http://ws.apache.org/ns/synapse" name="TririgaApi" context="/tririga">
       <resource methods="GET" url-mapping="/employee">
          <inSequence>
             <sequence key="conf:/tririgaConf"/>
             <property name="POST_TO_URI" value="true" scope="axis2"/>
             <send>
                <endpoint>
                   <http trace="enable" method="GET" uri-template="http://{uri.var.service.host}:{uri.var.service.port}/html/en/default/rest/Integration?USERNAME={uri.var.service.user}&amp;PASSWORD={uri.var.service.pass}&amp;ioName={uri.var.wfname}"/>
                </endpoint>
             </send>
          </inSequence>
       </resource>
</api>


谢谢

为api添加一个额外的功能,并在其中实现您的中介

您可以使用$axis2:http\u SC访问http状态代码

您可以使用filter mediator测试它的值


您可以使用payloadFactory mediator创建一条消息

谢谢Jean,但我对WSO2很陌生,是否有我可以使用的示例,请参见。我尝试添加意外结果,但不断收到异常:[2016-04-22 13:25:54273]ERROR-RelayUtils在生成Passthrough流org.apache.axiom.om.omeexception:com.ctc.wstx.exc.WstxUnexpectedCharException:prolog中的意外字符“S”(代码83);预期“当您尝试添加outSequence(从WSO2 web控制台)时,或在运行时,当您从服务“集成”收到响应时,会出现此异常”?嗨,Jean,感谢您的响应,我在添加outSequence后出现此错误。并(通过)浏览器调用服务。在ESB和端点之间使用tcpmon(ESB_HOME/bin)并查看您的服务响应:负载和内容类型似乎不一致(ESB在接收JSON时查找text/xml并尝试解码xml)