如何在Logic App中从HTTP响应提取值并配置ParseJson Schema
在Logic App中提取目标字段的步骤
1. 生成外层Parse Json的Schema
直接用你提供的完整HTTP响应体作为示例负载,让Logic App自动生成包含options数组的Schema:
- 在Logic App中添加「Parse Json」操作,选择HTTP响应的
body作为输入 - 点击「使用示例负载生成Schema」,粘贴给出的完整JSON响应体,Logic App会自动生成包含数组结构的Schema,其中
options的类型会被识别为数组,内部对象的结构也会被正确解析。
自动生成的Schema示例如下:
{ "type": "object", "properties": { "body": { "type": "object", "properties": { "id": { "type": "string" }, "object": { "type": "string" }, "created": { "type": "integer" }, "options": { "type": "array", "items": { "type": "object", "properties": { "job": { "type": "integer" }, "job_details": { "type": "object", "properties": { "role": { "type": "string" }, "content": { "type": "string" } }, "required": [ "role", "content" ] }, "job_action": { "type": "string" } }, "required": [ "job", "job_details", "job_action" ] } }, "dept": { "type": "object", "properties": { "grpup_id": { "type": "integer" }, "group_role": { "type": "integer" }, "total_count": { "type": "integer" } }, "required": [ "grpup_id", "group_role", "total_count" ] } }, "required": [ "id", "object", "created", "options", "dept" ] } } }
2. 处理嵌套的JSON字符串(job_details.content)
注意options[0].job_details.content是JSON格式的字符串,不是直接的对象,需要再添加一个「Parse Json」操作:
- 输入选择外层Parse Json结果中
options数组第一个元素的content,即body.options[0].job_details.content - 点击「使用示例负载生成Schema」,粘贴
{"job_number": "987"}作为示例,Logic App会自动生成对应Schema。
3. 在Compose操作中提取目标值
添加「Compose」操作,用表达式提取两个目标值:
- 提取
group_role:直接引用外层Parse Json的结果,表达式为body('Parse_JSON')?['body']?['dept']?['group_role'] - 提取
job_number:引用第二次Parse Json的结果,表达式为body('Parse_JSON_2')?['job_number']
也可以在一个Compose里返回包含两个值的对象:
{ "job_number": @{body('Parse_JSON_2')?['job_number']}, "group_role": @{body('Parse_JSON')?['body']?['dept']?['group_role']} }
注意事项
- 数组索引:这里用
[0]取options数组的第一个元素,若数组可能存在多个元素,需根据业务逻辑选择对应索引或循环遍历。 - 空值处理:表达式中的
?用于处理空值,避免因字段缺失导致流程报错。
内容的提问来源于stack exchange,提问作者hvn
相关产品推荐
相关产品推荐

