gpt4 book ai didi

dataweave - 如何获取XML编码类型?

转载 作者:行者123 更新时间:2023-12-04 23:12:00 29 4
gpt4 key购买 nike

我当前的有效负载是(从 POST 收到的)

<?xml version='1.0' encoding='ISO-8859-1'?>
<test>
</test>

我想获取编码值(即 ISO-8859-1 )

要使用的正确 DataWeave 表达式是什么?

我已经测试过了
var infos = payload.^mediaType splitBy "; "
var encoding = infos[1] splitBy "="
---
media:
{
mime: infos[0],
encoding: encoding[1]
}

但它返回给我:
{
"mime": "application/xml",
"encoding": "UTF-8"
}

好像 payload.^mediaType来自我的 POST header 。

这是问题的解决方案:
%dw 2.0
output application/java
---
((payload.^raw as String) scan /encoding='([A-z0-9-]+)'/)[0][1]

在建议的解决方案中,缺少 ^ 符号。

最佳答案

可悲的是,没有优雅的方法可以做到这一点。我认为的唯一方法是使用正则表达式。

%dw 2.0
output application/java
---
((payload.^raw as String) scan /encoding='([A-z0-9-]+)'/)[0][1]

这将返回编码。

关于dataweave - 如何获取XML编码类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58092589/

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