我想知道如何删除Azure搜索索引中的特定文档。
我想通过 REST API 使用“id”来删除文档。我曾寻找过,但找不到路。
{
"@odata.context": "https://xxxx/$metadata#docs(*)",
"value": [
{
"@search.score": 1,
"id": "16",
"questions": [
"Question"
],
"answer": "Answer",
"source": "https://azure.microsoft.com/ja-jp/support/faq/",
"keywords": [],
"alternateQuestions": null
},
例如,我只想删除id为16的文档。我不想删除整个索引,只想删除该文档。
如果有人知道如何操作,请提供 REST API 示例。
有关如何删除 Azure 搜索中的“文档”的文档可以是在这里找到的。 https://learn.microsoft.com/en-us/rest/api/searchservice/addupdate-or-delete-documents由于您想要删除与 id == 16 关联的所有字段,因此这应该是您要查找的内容。
为了更具体地说明您的具体情况,您需要向以下 URI 发出 POST 请求,并填写适当的服务名称、索引名称和 api 管理密钥(作为标头):
POST https://[service name].search.windows.net/indexes/[index name]/docs/index?api-version=2017-11-11
Content-Type: application/json
api-key: [admin key]
并具有以下请求正文:
{
"value": [
{
"@search.action": "delete",
"id": "16"
}
]
}
如果请求返回 200,则该文档已成功从索引中删除。
请注意,您可以通过在 JSON 数组中包含更多对象(每个对象具有不同的“id”)来删除同一请求中的多个文档。这比一次删除一个更有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)