PowerApps调用Flow返回Blob而非JSON类型的问题如何解决
返回值生成Blob类型属性的原因
Power Automate 向 Power Apps 返回数据时,如果在Flow末尾的「响应至Power Apps」动作中没有显式定义返回内容的JSON结构,系统会默认把整个响应体封装为Blob类型的json属性返回,不会自动解析内部嵌套的JSON字段,因此你拿到的myVar仅能识别到一个Blob类型的json属性,无法直接读取内部的items字段。
转换为可读取JSON对象的方法
共有两种可行方案:
- 方案1(长期稳定,优先推荐):修改Flow的响应配置
打开对应的Flow,找到末尾的「响应至Power Apps」动作,点击「显示高级选项」,找到「响应内容JSON架构」输入区,点击「从示例生成架构」,把你在Monitor中拿到的返回Body示例{"items": "Test 123"}粘贴进去,系统会自动生成对应的结构定义,保存后重新发布Flow。回到Power Apps后先移除原有Flow数据源,再重新添加该Flow,此时调用Set(myVar, myFlow.Run())后,直接使用myVar.items就能读取对应值。 - 方案2(无需修改Flow,临时调试可用):在Power Apps中直接解析Blob
使用ParseJSON和Text组合函数直接解析返回的Blob内容,执行公式如下:
后续读取Set(myVar, myFlow.Run()); Set(parsedData, ParseJSON(Text(myVar.json)));items值时,搭配类型转换函数即可使用,比如读取字符串值用Text(parsedData.items),读取数字用Value(parsedData.items)。
内容的提问来源于stack exchange,提问作者kjoetools
相关产品推荐
相关产品推荐

