0

以红色列出的故障场景

在尝试红色中列出的场景时,我无法使用 WSO2 ESB 从浏览器 [Rest 客户端] 调用 REST 后端。

Content Type 和 MessageFormatter 已经尝试过了,是我做错了什么还是这是 REST API 的限制。

方案 A 的源代码:

<?xml version="1.0" encoding="UTF-8"?>
<api xmlns="http://ws.apache.org/ns/synapse" name="InvokeASservice" context="/invokeWS" hostname="10.203.101.76">
    <resource methods="GET" uri-template="/{str1}">
        <inSequence>
            <log level="full" separator=",">
                <property name="sequence" value="** Request Recieved**"/>
            </log>
            <property name="REST_URL_POSTFIX" expression="fn:concat('/get?id=',get-property('uri.var.str1'))" scope="axis2" type="STRING"/>
            <send>
                <endpoint>
                    <address uri="http://10.203.101.76:9765/services/PersonInfoService.PersonInfoServiceHttpEndpoint/"/>
                </endpoint>
            </send>
        </inSequence>
        <outSequence>
            <log level="full" separator=",">
                <property name="sequence" value="** Message recieved**"/>
            </log>
            <property name="ContentType" value="application/xml" scope="axis2"/>
            <send/>
        </outSequence>
        <faultSequence/>
    </resource>
</api>

浏览器错误:

浏览器上的错误信息

#####################更新#####################

方案 A 似乎在更改源后工作

<api xmlns="http://ws.apache.org/ns/synapse" name="InvokeASservice" context="/invokeWS" hostname="10.203.101.76">
   <resource methods="GET" uri-template="/{str1}">
      <inSequence>
         <log level="full" separator=",">
            <property name="sequence" value="** Request Recieved**"/>
         </log>
         <property name="REST_URL_POSTFIX" expression="fn:concat('/get?id=',get-property('uri.var.str1'))" scope="axis2" type="STRING"/>
         <send>
            <endpoint>
               <address uri="http://10.203.101.76:9765/services/PersonInfoService.PersonInfoServiceHttpEndpoint/"/>
            </endpoint>
         </send>
      </inSequence>
      <outSequence>
         <send/>
      </outSequence>
      <faultSequence/>
   </resource>
</api>

但是,场景 C 仍然是一个未解决的难题,响应以 xml 格式出现。尝试将以下内容添加到 outSequence。没有帮助

<outSequence>
            <property name="messageType" value="application/json" scope="axis2" type="STRING"/>
            <send/>
        </outSequence>
4

0 回答 0