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

使用MSGraph PowerShell创建SharePoint文件夹报错:需提供folder facet

使用Microsoft Graph PowerShell创建SharePoint文件夹时的400错误及Folder Facet解析

什么是Folder Facet?

Folder Facet是Microsoft Graph API中用来声明资源类型为文件夹的标识性结构,本质就是一个空的嵌套对象({ "folder": {} })。当你调用API创建文件夹时,必须通过这个结构明确告诉Graph你要创建的是文件夹,而非文件或共享项——这就是错误提示里要求你提供它的原因。

为什么Postman成功但PowerShell失败?

Postman调用API时,你肯定在请求Body里包含了"folder": {}这个关键结构,而你的PowerShell代码大概率漏传了这个参数。Graph API无法仅凭name参数判断你要创建的资源类型,因此返回400 BadRequest错误。

正确的PowerShell代码示例

使用New-MgDriveItem cmdlet时,必须通过-BodyParameter传入包含folder属性的对象:

# 替换为你的实际参数
$driveId = "目标驱动器ID"
$parentItemId = "父文件夹的DriveItem ID"
$newFolderName = "测试新文件夹"

# 构造请求体,必须包含folder空对象
$requestBody = @{
    name = $newFolderName
    folder = @{}
    "@microsoft.graph.conflictBehavior" = "rename" # 可选:重名时自动重命名
}

# 执行创建操作
New-MgDriveItem -DriveId $driveId -ParentItemId $parentItemId -BodyParameter $requestBody

关键注意点

  • 不要省略folder = @{}:即使它是空对象,也是Graph识别文件夹类型的核心标识
  • 如果需要处理重名冲突,可以添加@microsoft.graph.conflictBehavior参数,可选值有rename、fail、replace

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 10:10:57