使用Logic Apps抓取Teams文件夹文件:嵌套文件夹设置异常问题
针对你遇到的Logic Apps开启"Nested items"时主文件夹文件缺失的问题,可能的原因和排查点如下:
隐性文件过滤:检查缺失的7个文件是否属于SharePoint的系统文件、隐藏文件,或者带有特定属性(如已签出、锁定)。部分SharePoint连接器在嵌套遍历模式下会自动排除这类文件,而单文件夹模式下不会触发该过滤逻辑。可以在SharePoint中查看这些文件的属性,对比能被获取的文件差异。
分页机制差异:SharePoint REST API在遍历嵌套文件夹时,分页参数的默认值可能和单文件夹查询不同。如果主文件夹的文件数量超过了嵌套模式下的默认分页大小,未处理分页的话会导致部分文件无法返回。可以查看Logic Apps中获取文件动作的返回结果,检查是否存在
@odata.nextLink字段,若有则需要添加循环处理分页逻辑。权限上下文问题:虽然单文件夹模式能正常读取所有文件,但嵌套遍历过程中,连接器可能切换了权限上下文(比如遍历子文件夹时触发了不同的权限继承校验),导致部分主文件夹文件被权限拦截。确认Logic Apps所使用的身份(如托管标识、服务账号)对缺失的7个文件拥有明确的读取权限,而非仅通过文件夹权限继承。
连接器版本bug:旧版本的SharePoint连接器存在嵌套文件遍历的逻辑bug,导致部分文件遗漏。尝试将连接器更新至最新版本,或重新创建"获取文件"动作,排除版本问题。
特殊字符文件名:若缺失的文件包含#、%、&等特殊字符,嵌套遍历的API请求可能因字符解析异常而无法识别这些文件。尝试重命名其中一个问题文件,测试是否能在开启嵌套项时被正常获取。
内容的提问来源于stack exchange,提问作者Erik Warming

