Azure 逻辑应用程序 - JSON 解析 - 十进制类型解析为整数

Azure Logic Apps - JSON Parsing - Decimal type parsed as Integer

我正在使用 Azure 逻辑应用程序,其中一个步骤是解析 API JSON 响应。我正在上传有效负载以生成架构。

我的属性之一是 Tax 的小数类型,具体在 JSON 中为“Number”类型 我的来源 JSON 中的值是这样产生的……

"TaxAmount": 999.00

然而,当它被解析时,它被设置为“整数”

当我将值更改为...

"TaxAmount": 999.01

它将正确显示为“数字”类型

有没有一种方法可以定义 999.00 的值并将其解析为“数字”而不是“整数”?

如有任何帮助,我们将不胜感激

一种解决方法是在解析时直接(即手动)更改变量的类型。像

很遗憾,没有。

Some programming languages and parsers use different internal representations for floating point numbers than they do for integers.

For consistency, integer JSON numbers SHOULD NOT be encoded with a fractional part.

https://json-schema.org/draft/2020-12/json-schema-core.html#integers

请注意,这是不应该的,因此可能是允许的。 但是,考虑一下,实现的行为可能不同。 “不应该”的意思是,“除非你有充分的理由,否则你真的不应该这样做,如果你这样做,最好记录下来”。

如果需要,请考虑将数字编码为字符串并使用正则表达式进行验证。