如何在Microsoft Graph查询搜索中只获得总数。是否要求只获取总数?
我正在实现一个自定义的解决方案,使用MS图查询搜索在在线搜索SharePoint时获得总数结果。MS Graph API返回总数,但我想知道是否有一种方法只获得总数而不检索命中数。
API请求:https://graph.microsoft.com/v1.0/search/query
{
"value": [
{
"searchTerms": [
"covid"
],
"hitsContainers": [
{
"hits": [...
],
"total": 20,
"moreResultsAvailable": false
}
]
}
],
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.searchResponse)"
}
What I tried:
我使用MS图形资源管理器并提交了此请求API请求:https://graph.microsoft.com/v1.0/search/query
这是MS图形资源管理器的结果:
{
"value": [
{
"searchTerms": [
"covid"
],
"hitsContainers": [
{
"hits": [...
],
"total": 20,
"moreResultsAvailable": false
}
]
}
],
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.searchResponse)"
}
根据文档,作为一个语法为$count=true的查询字符串参数,包括集合中项目总数的计数以及从Microsoft Graph返回的数据值页面。-
没有特定的方法可以得到count,
但是你可以尝试下面的调用,这将只返回你1个数据,
API - https://graph.microsoft.com/v1.0/users/?$search="displayName:Vicky"&$count=true&$top=1
如果没有搜索API的搜索结果,则无法获得匹配结果的总数。
响应总是包含searchHitsContainer
和搜索结果的集合。
注意在messages
,Teams messages
和events
中搜索,因为对于消息,Teams消息,事件,searchHitsContainer
类型的total
属性包含页面上的结果数量,而不是匹配结果的总数。