Power Automate 格式化JSON时字段为空

  前言

  最近,在使用Power Automate处理JSON的时候,碰到一个错误。

  正文

  1.处理JSON的过程,一般是这样的,如下图:

  2.测试一下,这样,我们就很容易操作JSON字符串中的属性了,如下图:

  3.但是,大家在开发中,碰到过这样的问题没有?

  4.详细的错误信息,如下图:

[
  {
    "message": "Invalid type. Expected String but got Null.",
    "lineNumber": 0,
    "linePosition": 0,
    "path": "age",
    "schemaId": "#/properties/age",
    "errorType": "type",
    "childErrors": []
  }
]

  5.这个时候,我们就需要特别的处理一下Prase JSON时的Schema了,如下图:

  6.大家可以看下完整的Schema,意思就是age这个属性,可以是string或者null,如下图:

{
    "type": "object",
    "properties": {
        "name": {
            "type": "string"
        },
        "age": {
            "type": ["string","null"]
        },
        "address": {
            "type": "string"
        },
        "comment": {
            "type": "string"
        }
    }
}

  7.我们测试一下正常情况下的执行结果,如下图:

  8.我们再测试一下,年龄为空的时候的结果,我们可以看到即使年龄为空,但是flow不会报错了,如下图:

  结束语

  我们在使用Automate的时候,尤其是跟其他系统做集成的时候,经常会接收其它系统的json数据,注意数据的异常处理,保证Flow的健壮性,是非常重要的。

posted @ 2025-03-04 22:52  霖雨  阅读(42)  评论(0)    收藏  举报