【问题标题】:Get Response payload through Datapower gateway script for invalid XML通过 Datapower 网关脚本获取无效 XML 的响应负载
【发布时间】:2019-09-12 02:11:16
【问题描述】:

我正在使用 IBM API connect 和 IBM DataPower 2018。

我有一个 SOAP Web 服务,我需要通过捕获请求\响应负载为它做一些自定义日志记录。

当服务返回有效的 XML 甚至 SOAP 异常时,我可以轻松处理此类情况,并将请求\响应负载保存在单独的 DB 模式中以供操作。

我通过从后端返回非 XML 响应来更新响应负载,例如“ABCDEFGHI....”。 当我通过 datapower 调用此服务时,它会返回明确的响应。

<errorResponse>
   <httpCode>400</httpCode>
   <httpMessage>Bad Request</httpMessage>
   <moreInformation>Invalid XML payload received.</moreInformation>
</errorResponse>

但我无法捕获 message.body 有效负载,在我的情况下为“ABCDEFGHI..”,apim.getvariable('message.body') 什么也不返回。

我的问题: 如何使用网关脚本捕获 SOAP 服务的无效响应负载(None Well XML)?

【问题讨论】:

    标签: api-gateway ibm-datapower apiconnect


    【解决方案1】:

    您不能...因为消息将在处理之前被拒绝,因为 DataPower 会将消息类型设置为 SOAP,它将拒绝任何不是 SOAP 的内容。 您需要通过可以捕获响应负载的“链接”API(或 DataPower 实例上的服务)传递它。

    【讨论】:

    • 谢谢,你是对的,我们无法捕获这样的有效载荷。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多