gpt4 book ai didi

soap - 调用 API 时使用 WSO2 返回 SOAP 响应

转载 作者:行者123 更新时间:2023-12-05 04:19:36 25 4
gpt4 key购买 nike

我使用返回 JSON 对象的 WSO2 数据服务创建了一个 API,我的客户端应用程序等待 SOAP 响应而不是 JSON 响应,所以我尝试使用数据映射器将响应格式从 JSON 更改为 SOAP 但它只返回和没有 SOAP 主体和 SOAP 信封的 XML 格式。如何解决这个问题?

这是我想要得到的 SOAP 响应格式:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetFacturesClientResponse xmlns="http://tempuri.org/">
<GetFacturesClientResult>
<code>0</code>
<codeClient>P-2008-043681</codeClient>
<nom>na</nom>
<prenom>ouss</prenom>
</GetFacturesClientResult>
</GetFacturesClientResponse>
</soap:Body>
</soap:Envelope>

但是我得到了这样的回复:

<GetFacturesClientResponse xmlns="http://tempuri.org/">
<GetFacturesClientResult>
<code>0</code>
<codeClient>P-2008-043681</codeClient>
<nom>na</nom>
<prenom>ouss</prenom>
</GetFacturesClientResult>
</GetFacturesClientResponse>

这是我的代码:

<datamapper config="gov:datamapper/oussama.dmc" inputSchema="gov:datamapper/oussama_inputSchema.json" inputType="JSON" outputSchema="gov:datamapper/oussama_outputSchema.json" outputType="JSON" xsltStyleSheet="gov:datamapper/oussama_xsltStyleSheet.xml"/>

最佳答案

Respond Mediator 之前设置以下属性。

<property name="messageType" value="application/soap+xml" scope="axis2"/>

同样在您的 Datamapper 部分中,outputType="XML" 不是 JSON。


更新

正如 ophychius 提到的。上述内容类型将创建 SOAP 1.2 消息,如果您需要 SOAP 1.1 消息,请将内容类型设置为 text/xml。通常,客户端支持这两个版本。

关于soap - 调用 API 时使用 WSO2 返回 SOAP 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74768471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com