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

Logic App无法从邮件附件提取并解析JSON文件问题求助

解决Logic App从邮件附件解析JSON的问题

问题定位

报错提示无法计算模板语言表达式'body('GetAttachment')?['Attachments'][0]?['ContentBytes']',因为无法选择属性'0',核心原因是:

  • Attachments字段并非数组类型,或是当前邮件无附件,导致[0]索引访问失效
  • 你之前使用的表达式未正确定位附件内容字节,也未提前确认附件是否存在

正确操作步骤

1. 正确获取附件内容

确保Get Attachment动作返回的Attachments为数组格式(邮件附件通常以数组存储),单附件场景下,用索引[0]前需通过?做空值保护,避免字段不存在时直接报错。正确表达式如下:

base64ToString(body('GetAttachment')?['Attachments']?[0]?['ContentBytes'])

注意:邮件附件的ContentBytes是base64编码格式,必须通过base64ToString转成字符串,才能被Parse JSON动作识别

2. 配置Parse JSON动作

将上述表达式作为Parse JSON的输入内容,接着:

  • 点击「使用示例负载生成架构」,粘贴附件中的JSON内容,自动生成匹配的JSON架构
  • 或手动编写JSON架构,确保能正确识别姓名字段

3. 提取姓名到变量

Parse JSON执行完成后,直接通过表达式引用解析后的姓名字段。例如JSON中姓名字段为name,则使用:

body('Parse_JSON')?['name']

将该表达式赋值给目标变量即可。

额外排查点

  • 检查Get Attachment动作配置,确认是获取当前触发邮件的附件,而非其他邮件
  • 若存在多个附件,需添加Apply to each动作遍历Attachments数组,再在循环内执行Parse JSON操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 07:43:11