使用图形API在Sharepoint中创建嵌套文件夹失败

使用图形API在Sharepoint中创建嵌套文件夹失败,sharepoint,microsoft-graph-api,onedrive,Sharepoint,Microsoft Graph Api,Onedrive,我可以使用以下图形请求(使用beta API)在(个人)OneDrive中创建嵌套文件夹/folder1/folder2: 在这里,folder1事先不存在;一个API调用创建它和folder1/folder2 但是,SharePoint和OneDrive for Business的相同代码失败,出现404错误。是否支持这种类型的请求?我不希望对每一层嵌套都进行单独的API调用 我问这个问题是因为我不确定我的站点是否有导致请求失败的策略,或者因为API实际上不支持它。这对我来说很有效。从正文中删

我可以使用以下图形请求(使用beta API)在(个人)OneDrive中创建嵌套文件夹
/folder1/folder2

在这里,
folder1
事先不存在;一个API调用创建它和
folder1/folder2

但是,SharePoint和OneDrive for Business的相同代码失败,出现404错误。是否支持这种类型的请求?我不希望对每一层嵌套都进行单独的API调用


我问这个问题是因为我不确定我的站点是否有导致请求失败的策略,或者因为API实际上不支持它。

这对我来说很有效。从正文中删除
name
参数,并使用
PATCH
而不是
POST
。在URL中指定路径

PATCH drives/{id}/root:/folder1/folder2

{
    "folder": {},
    "@microsoft.graph.conflictBehavior": "fail"
}

使用OneDrive for Business的
v1.0
beta
进行测试。

AFAIK,您应该提供父文件夹的文件夹名称(提供路径时)或文件夹id(提供id时),以便在其中创建子文件夹,因为父文件夹应该具有
父项id
,以便创建文件夹。唯一的方法是,正如您所说的,为每个级别分别调用API。创建文件夹时,您可以在响应中获得path属性,您可以使用它轻松地自动调用。@ShivaKeshavVarma上述代码适用于personal OneDrive;我已经验证了这一点,尽管文档没有提到它。是的,我也在个人电脑上测试了它,它可以工作,但不使用工作帐户。哦,太好了,我不知道你可以使用补丁创建一个新的文件/文件夹。
PATCH drives/{id}/root:/folder1/folder2

{
    "folder": {},
    "@microsoft.graph.conflictBehavior": "fail"
}