使用Graph API访问SharePoint文件夹文件遇URI错误,求解决方案
你的请求URI不符合Microsoft Graph API的端点规范,导致无法正确定位到OneDriveInventory文件夹下的文件,以下是具体修正方案:
错误原因
Graph API中,访问Drive(文档库)内指定路径的文件,不能直接在drives/$driveId后拼接文件夹名,必须通过root:/{相对路径}:/content的格式来定位文件资源。
修正后的代码
将URI调整为路径定位格式,直接指向目标文件的内容端点:
Invoke-WebRequest -Uri "https://graph.microsoft.com/v1.0/sites/$siteId/drives/$driveId/root:/OneDriveInventory/$($filename):/content" -Method GET -OutFile $filePath -Headers $headers
补充说明
- 末尾的
:/content是关键,用于指定获取文件的二进制内容;如果仅需获取文件元数据(而非下载文件),可去掉:/content,返回结果为JSON格式的文件信息。 - 确保请求头中的
$headers包含有效的身份验证令牌,且令牌拥有Files.Read或更高权限(如Files.ReadWrite)。
内容的提问来源于stack exchange,提问作者aasenomad
相关产品推荐
相关产品推荐

