Java 从sharepoint获取metada(列信息)
我正在使用Microsoft Graph SDK for Java()从Sharepoint中提取文档。 除了GraphServiceClient提供的“标准”文档外,是否还可以提取有关文档的信息 这意味着通过GraphServiceClient,我可以通过以下方式获得createdBy、description、lastModifiedDateTime、webUrl。。。显然,我正试图提取可以在Sharepoint中额外定义的信息——可以为文档创建自定义字段/列,并为每个文档设置值Java 从sharepoint获取metada(列信息),java,sdk,metadata,microsoft-graph-api,Java,Sdk,Metadata,Microsoft Graph Api,我正在使用Microsoft Graph SDK for Java()从Sharepoint中提取文档。 除了GraphServiceClient提供的“标准”文档外,是否还可以提取有关文档的信息 这意味着通过GraphServiceClient,我可以通过以下方式获得createdBy、description、lastModifiedDateTime、webUrl。。。显然,我正试图提取可以在Sharepoint中额外定义的信息——可以为文档创建自定义字段/列,并为每个文档设置值 我想提取额外
我想提取额外的“元数据”。我该怎么做呢?只要试着在查询中添加$expand
items = client
.users(mailbox)
.drives(drive-id)
.items(att.id)
.buildRequest(Lists.newArrayList(new QueryOption("$expand","fields")))
.get();
注:
并非所有自定义元数据都可以通过Graph API检索。
简称:
/items?expand=fields
我的实际测试查询:
https://graph.microsoft.com/v1.0/sites/{site id}/drives/{drive-id}/list/items?expand=fields
响应(MyTestMetadata1是我的测试元数据):
基本上,DriveItem关于sharepoint上文件的信息较少。 因此,使用ListItem就是获取为文档定义的所有内容
IGraphServiceClient graphClient = GraphServiceClient.
builder().
authenticationProvider(authenticator).
logger(new Slf4jGraphLogger(logger)).
buildClient();
ListItem fileMetadata =
graphClient.
drives(driveId).
items(item.id).
listItem().
buildRequest().get();
在那里,fileMetadata有“字段”,其中存储了所有元数据(自定义和常用)
我对单个文档的测试查询是:
https://graph.microsoft.com/v1.0/sites/{site id}/drives/{drive-id}/items/{item-id}/listItem
及
回答与前面的回答相同
https://graph.microsoft.com/v1.0/sites/{site id}/drives/{drive-id}/items/{item-id}/listItem
https://graph.microsoft.com/v1.0/sites/{site id}/drives/{drive-id}/items/{item-id}/listItem/fields