You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power Automate Parse JSON步骤报“缺失必填属性”错误的解决咨询

处理Power Automate中JSON可选属性缺失导致Parse JSON报错的方案

以下是几种可行的解决思路,按推荐优先级排序:

1. 修改JSON Schema,标记可选属性为非必填

这是最规范的解决方案,直接针对Parse JSON的校验规则调整:

  • 打开Parse JSON步骤的Schema编辑器,找到包含可选属性的对象(比如link),检查其required数组,把像minimun_version这类不是每次都存在的属性从数组中移除。
  • 也可以在属性定义里明确添加"required": false(部分场景下需要)。

示例修改后的Schema片段:

{
  "type": "object",
  "properties": {
    "link": {
      "type": "object",
      "properties": {
        "minimun_version": {
          "type": "string",
          "required": false
        },
        "url": {
          "type": "string",
          "required": true
        }
      },
      "required": ["url"] // 仅保留必须存在的属性
    }
  }
}

2. 预处理JSON,补全缺失属性

如果不想修改Schema,可以先用Compose或Select步骤遍历JSON数组,给缺失的属性赋默认值:

  • 用Select步骤处理数组时,在映射规则中对可选属性使用条件判断:
    • 比如minimun_version的映射值写为:if(contains(item()?['link'], 'minimun_version'), item()?['link']?['minimun_version'], '')
  • 处理完成后,把预处理后的结果传入Parse JSON步骤,这样所有元素都会包含Schema要求的属性。

3. 关闭Schema严格校验(应急方案)

如果需要快速验证流程逻辑,可以临时关闭Parse JSON的Schema校验:

  • 点击Parse JSON步骤的三个点菜单,选择"Settings",找到"Schema validation"选项,改为"None"。
  • 注意:此方法会失去类型校验的保护,后续引用属性时必须用coalesce()或if()处理空值,比如coalesce(body('Parse_JSON')?['link']?['minimun_version'], '1.0.0'),避免空值引发后续报错。

4. 动态引用属性时处理空值

无论用哪种方法解决Parse JSON的报错,后续步骤引用可选属性时都建议处理空值:

  • 使用coalesce()函数直接给空值赋默认值,或者用if(empty(...), ..., ...)做条件判断,确保流程不会因为属性缺失中断。

内容的提问来源于stack exchange,提问作者sugarakis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 11:45:31