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

Documents - Index

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

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

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

ErrorResponse

错误响应。

示例

SearchIndexIndexDocuments

示例请求

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

{
  "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
    }
  ]
}

定义

名称 说明
ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

IndexAction

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

IndexActionType

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

IndexBatch

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

IndexDocumentsResult

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

IndexingResult

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

ErrorAdditionalInfo

资源管理错误附加信息。

名称 类型 说明
info

object

其他信息。

type

string

其他信息类型。

ErrorDetail

错误详细信息。

名称 类型 说明
additionalInfo

ErrorAdditionalInfo[]

错误附加信息。

code

string

错误代码。

details

ErrorDetail[]

错误详细信息。

message

string

错误消息。

target

string

错误目标。

ErrorResponse

错误响应

名称 类型 说明
error

ErrorDetail

错误对象。

IndexAction

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

名称 类型 说明
@search.action

IndexActionType

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

IndexActionType

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

名称 类型 说明
delete

string

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

merge

string

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

mergeOrUpload

string

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

upload

string

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

IndexBatch

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

名称 类型 说明
value

IndexAction[]

批处理中的操作。

IndexDocumentsResult

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

名称 类型 说明
value

IndexingResult[]

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

IndexingResult

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

名称 类型 说明
errorMessage

string

解释索引操作失败的原因的错误消息,该文档由键标识;如果索引成功,则为 null。

key

string

索引请求中文档的键。

status

boolean

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

statusCode

integer

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