你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。

Documents - Index

将一批文档写入作发送到索引。

POST {endpoint}/indexes('{indexName}')/docs/search.index?api-version=2023-11-01

URI 参数

名称 在 必需 类型 说明
endpoint
path True

string

搜索服务的终结点 URL。

indexName
path True

string

索引的名称。

api-version
query True

string

客户端 API 版本。

请求头

名称 必需 类型 说明
x-ms-client-request-id

string (uuid)

随请求一起发送的跟踪 ID,以帮助进行调试。

请求正文

名称 必需 类型 说明
value True

IndexAction[]

批处理中的作。

响应

名称 类型 说明
200 OK

IndexDocumentsResult

包含批处理中所有作的作状态的响应。

Other Status Codes

IndexDocumentsResult

包含批处理中所有作的作状态的响应。

Other Status Codes

SearchError

错误响应。

示例

SearchIndexIndexDocuments

示例请求

POST https://myservice.search.windows.net/indexes('myindex')/docs/search.index?api-version=2023-11-01

{
  "value": [
    {
      "@search.action": "upload",
      "docId": "1",
      "title": "Fancy Stay",
      "description": "Best hotel in town"
    },
    {
      "@search.action": "merge",
      "docId": "2",
      "title": "Roach Motel"
    },
    {
      "@search.action": "mergeOrUpload",
      "docId": "3",
      "title": "Econo Motel"
    },
    {
      "@search.action": "delete",
      "docId": "4"
    }
  ]
}

示例响应

{
  "value": [
    {
      "key": "1",
      "status": true,
      "errorMessage": null,
      "statusCode": 201
    },
    {
      "key": "2",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "3",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "4",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    }
  ]
}
{
  "value": [
    {
      "key": "1",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "2",
      "status": false,
      "errorMessage": "Document not found.",
      "statusCode": 404
    },
    {
      "key": "3",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    },
    {
      "key": "4",
      "status": true,
      "errorMessage": null,
      "statusCode": 200
    }
  ]
}

定义

名称 说明
IndexAction

表示对文档进行作的索引作。

IndexActionType

对索引批处理中的文档执行的作。

IndexBatch

包含一批要发送到索引的文档写入作。

IndexDocumentsResult

包含索引请求中所有文档的作状态的响应。

IndexingResult

单个文档的索引作的状态。

SearchError

描述 API 的错误条件。

IndexAction

表示对文档进行作的索引作。

名称 类型 说明
@search.action

IndexActionType

对索引批处理中的文档执行的作。

IndexActionType

对索引批处理中的文档执行的作。

值 说明
upload

如果文档为新文档,则将其插入索引,并在文档存在时对其进行更新。 更新事例中将替换所有字段。

merge

将指定的字段值与现有文档合并。 如果文档不存在,合并将失败。 在合并中指定的任何字段都将替换文档中的现有字段。 这也适用于基元和复杂类型的集合。

mergeOrUpload

如果索引中已存在具有给定键的文档,则行为类似于合并。 如果文档不存在,则其行为类似于使用新文档上传。

delete

从索引中删除指定的文档。 在除键字段以外的删除作中指定的任何字段将被忽略。 如果要从文档中删除单个字段,请改用合并,并将字段显式设置为 null。

IndexBatch

包含一批要发送到索引的文档写入作。

名称 类型 说明
value

IndexAction[]

批处理中的作。

IndexDocumentsResult

包含索引请求中所有文档的作状态的响应。

名称 类型 说明
value

IndexingResult[]

索引请求中每个文档的状态信息列表。

IndexingResult

单个文档的索引作的状态。

名称 类型 说明
errorMessage

string

错误消息,说明键标识的文档索引作为何失败;如果索引成功,则为 null。

key

string

索引请求中文档的键。

status

boolean

一个值,该值指示键标识的文档的索引作是否成功。

statusCode

integer (int32)

索引作的状态代码。 可能的值包括:200 用于成功更新或删除,201 用于成功创建文档,400 表示格式不正确的输入文档,404 表示找不到文档,版本冲突为 409;索引暂时不可用时为 422;如果服务太忙,则为 503。

SearchError

描述 API 的错误条件。

名称 类型 说明
code

string

服务器定义的错误代码集之一。

details

SearchError[]

导致此报告错误的特定错误的详细信息数组。

message

string

错误的人工可读表示形式。