如何用Microsoft Graph API设置SharePoint Drive Item的查找字段值
可以通过Microsoft Graph API实现该操作,正确调用方式如下
核心原因说明
文档库本质是SharePoint列表,文件的自定义元数据(包括查找字段)需要通过文档库对应的列表项端点修改,而非Drive项端点。你之前使用的/drives/<driveID>/items/<itemID>端点不支持直接修改自定义查找字段,必须通过列表项的/fields接口操作。
正确请求细节
1. 获取文档库的List ID
先调用以下接口获取目标文档库的List ID:
GET https://microsoftgraph.chinacloudapi.cn/v1.0/sites/root/lists?$filter=displayName eq '你的文档库名称'
返回结果中id字段即为文档库的List ID。
2. 修改查找字段的请求
请求URL
https://microsoftgraph.chinacloudapi.cn/v1.0/sites/root/lists/{libraryListId}/items/{listItemId}/fields
{libraryListId}:替换为第一步获取的文档库List ID{listItemId}:替换为文件对应的列表项ID(可通过文件的listItem关联属性获取,或在SharePoint文档库中查看文件的ID)
请求头
Authorization: Bearer {你的访问令牌} Content-Type: application/json
请求体
注意查找字段的值必须是数字类型的列表项ID,且字段名需使用字段的内部名称(可在SharePoint字段设置页面查看):
{ "MetadataLookupId": 686 }
关键注意事项
- 字段内部名称:若你在SharePoint中创建的字段显示名为"元数据查找",内部名称可能是
MetadataLookup,此时请求体中需用MetadataLookupId(末尾加Id) - 权限要求:访问令牌需具备
Sites.ReadWrite.All权限,或目标文档库的编辑权限 - 数据类型:查找字段的ID必须是数字,不能用字符串包裹
内容的提问来源于stack exchange,提问作者meilun
相关产品推荐
相关产品推荐

