使用Power Automate从SharePoint列表动态获取文件内容时遇文件未找到错误
核心原因分析
你遇到的问题本质是动态路径构造错误或权限/参数不匹配,直接选择图片时流能正常运行,是因为平台自动处理了文件标识符、权限验证等环节,而手动拼接路径时这些细节容易出错。
具体排查与解决步骤
1. 修正路径格式与来源
- 禁止手动拼接路径,直接从列表项的附件属性中提取完整绝对路径或文件标识符:
通过“获取项目”动作返回的Attachments集合里,AbsoluteUri是现成的完整附件URL,Id是文件的唯一标识符,用这两个值作为“获取文件内容”的输入,比手动拼接可靠100%。 - 若必须手动构造路径,严格遵循格式:
注意:文件名区分大小写,含空格或特殊字符时需用https://[租户域名].sharepoint.com/sites/[站点名]/Lists/[列表名]/Attachments/[项目ID]/[文件名]encodeURIComponent()编码(Power Automate中直接用表达式encodeUriComponent(文件名变量)处理)。
2. 验证权限一致性
- 检查“获取文件内容”动作使用的连接账号:直接选择图片时用的是流运行者的权限,而手动路径可能用了不同的连接身份(比如服务账号),确保该账号有目标列表附件的读取权限(需在SharePoint站点/列表权限设置中分配)。
3. 修正动作参数配置
- 确保使用正确的动作:如果用路径,选择“SharePoint - 获取文件内容使用路径”,而非普通的“获取文件内容”(后者默认需要文件标识符)。
- 输入参数时,站点地址必须和文件所在站点完全匹配,不能省略或写错站点路径。
示例流程(Power Automate)
- 添加“获取项目”动作,选择目标SharePoint列表,勾选包含附件字段。
- 添加“应用到每一个”动作,遍历
获取项目输出的Attachments集合。 - 在循环内添加“获取文件内容”动作,将
当前项目的Id(文件标识符)传入,或直接使用AbsoluteUri作为路径输入。 - 用获取到的文件内容填充Word文档的图片/文本字段。
内容的提问来源于stack exchange,提问作者Hassan Rabiu
相关产品推荐
相关产品推荐

