如何在 MS Graph 中检索 DriveItems 的自定义列

2024-03-26

我正在尝试使用 Graph API 检索 Sharepoint 文档库中的文件层次结构。由于文档库存储在“驱动器”中(将其称为 OneDrive 在技术上是否正确?),我使用的是/drives端点来获取文件列表,如下所示:

https://graph.microsoft.com/beta/drives/{driveid}/root/children

我想从通过 Sharepoint 查看这些项目时存在的一些自定义列中获取信息。使用?expand=fields不起作用,因为fields只存在于listItem对象中/sites端点,不在driveItem的对象/drives端点。如果我尝试从单个driveItem获取listItem(从OneDrive遍历图表到Sharepoint),然后扩展字段,例如

https://graph.microsoft.com/beta/drives/{driveid}/items/{driveItemId}/listItem?expand=fields

这会检索内置列(Author、DocIcon 和其他一些列),但似乎不会检索自定义列。 我也尝试过从/sites端点,并使用?expand=fields将获取自定义列,但它获取每个子文件夹中的每个文件,而不是当前文件夹路径。但我觉得这值得有一个自己的问题。

是否可以从driveItems 检索自定义列信息?


我花了很多时间挖掘不同的语法可能性,最终能够使用这种查询格式获取自定义库属性。这是唯一为文档库生成自定义/用户定义字段的库。

https://graph.microsoft.com/v1.0/drives/insert_drive_id_here/root/children?expand=listItem https://graph.microsoft.com/v1.0/drives/insert_drive_id_here/root/children?expand=listItem

缩短结果:

{
"@odata.context": "...",
"value": [
        {
        "@microsoft.graph.downloadUrl": "...",
        "[email protected] /cdn-cgi/l/email-protection": "...",
        "listItem": {
            "@odata.etag": "...",
            "[email protected] /cdn-cgi/l/email-protection": "...",
            "fields": {
                "@odata.etag": "...",
                "Title": "...",
                "Other_Custom_Property": "..."
                }
            }
        }
    ]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 MS Graph 中检索 DriveItems 的自定义列 的相关文章

随机推荐