【发布时间】:2019-11-03 16:48:07
【问题描述】:
我正在尝试通过将有效负载设置为我保存在文件中的 JSON 对象来创建一个模拟 HTTP 请求的 MUnit 测试。在 Mule 3 中,我会刚刚完成 getResource('fileName.json').asString() 并且效果很好。但是在 Mule 4 中,我不能静态调用 getResource。
我找到了一个建议我使用MunitTools::getResourceAsString 的forum post on the Mulesoft forums。当我运行测试时,我确实看到了 JSON 对象,但其中包含所有 \n 和 \r 字符以及转义所有引号的 \。显然这意味着我的 JSON 格式不再正确。
理想情况下,我想找到 MunitTools 的参考,以便我可以看到我可以调用的函数列表,并且可能找到不添加转义字符的函数,但我没有任何运气。如果有人知道我可以参考的一些参考文件,请告诉我。
无法找到一种方法来返回没有额外字符的数据,我尝试通过 dataweave 替换它们。替换 \n 和 \r 时这很好,但由于每个双引号前面还有更多 \s,我似乎无法让这些消失。
如果我这样做......
replace (/\/) with ("")
...我收到一个错误。一位同事建议针对每个\" 并将它们替换为",但这是一个问题,因为这给了我"""。为了解决这个问题,我已经尝试过
replace(/\"/) with "\""
...这不会导致任何错误,但由于某种原因,它将\ 读取为文字,因此它将原始字符串替换为自身。我也试过...
用。。。来代替 '”'
...但这也会导致错误
我也愿意接受任何其他解决方案。
谢谢
--画了
【问题讨论】:
标签: java json regex munit mulesoft