我正在我的sharepoint网站中使用Graph进行全局搜索,我需要检索一些特定的字段。我没有找到任何文档指定可以用于有效负载上的fields
属性的可用字段,只有用于特定文档库搜索的文档。
我必须使用全局搜索,因为我的搜索需要访问sharepoint网站上的所有文档库。
我想从请求中获得的字段是列表中文档的版本。我可以在sharepoint中添加此字段,我的视图正在显示版本值,但请求不接受此值。我在下面使用这个请求:
端点:https://graph.microsoft.com/v1.0/search/query
有效载荷:
"requests": [
{
"entityTypes": [
"listItem"
],
"query": {
"queryString": ""
},
"fields": [
"title",
"_UIVersionString"
]
}
]
}
响应:
{
"value": [
{
"searchTerms": [],
"hitsContainers": [
{
"hits": [
{
"hitId": "83C63693-C621-4CFE-B4F7-A36B68AEB421",
"rank": 1,
"summary": "...",
"resource": {
"@odata.type": "#microsoft.graph.listItem",
"fields": {
"title": "Calc.22090615231879"
}
}
},
],
"total": 1,
"moreResultsAvailable": false
}
]
}
],
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.searchResponse)"
}
我在与版本对应的有效负载中使用的字段的名称是_UIVersionString
,在该字段中,我使用https://graph.microsoft.com/v1.0/sites/{site-id}/lists/{list-id}/items?$expand=fields
端点从特定的列表搜索请求中获得它。但遗憾的是,这个版本并没有出现在我的搜索结果上。
是否有一些文档可用于查看此请求的可用字段列表?我试图在MS GraphAPI文档中找到它,但它看起来是一本真正的大百科全书。
您知道对应于版本的字段的名称吗?
非常感谢!
其他资料:
Sharepoint Version: Sharepoint Web (Online)
Type of the lists: Document Library
Lists version configuration:
- Require content approval for submitted items?: No
- Create a version each time you edit a file in this document library?: Create Major Versions
- Require documents to be checked out before they can be edited?: No
发布于 2022-09-14 18:03:54
由于图形使用的是来自sharepoint的托管属性,所以您可以尝试"UIVersionStringOWSTEXT“。
{
"requests": [
{
"entityTypes": [
"listItem"
],
"query": {
"queryString": "test"
},
"fields": [
"title",
"UIVersionStringOWSTEXT"
]
}
]
}
结果就像
{
"value": [
{
"searchTerms": [
"test"
],
"hitsContainers": [
{
"hits": [
{
"hitId": "GUID",
"rank": 1,
"summary": "test",
"resource": {
"@odata.type": "#microsoft.graph.listItem",
"fields": {
"title": "test",
"uiVersionStringOWSTEXT": "1.0"
}
}
}
],
"total": 1,
"moreResultsAvailable": false
}
]
}
],
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.searchResponse)"
}
在我的租户中,这个属性已经创建了。我想这是默认的。如果您的搜索架构没有此托管属性,则可以创建它并按您的意愿命名它。将其映射到爬行属性"ows_q_TEXT__UIVersionString“,并确保您的托管属性设置为”可检索“。
https://stackoverflow.com/questions/73634307
复制相似问题