我有一个关于使用REST API修补MarkLogic数据库中的文档的问题.
我有一个用.NET Core编写的服务,我使用MarkLogic作为我的数据存储.在我的情况下,我必须修补数千个文档,如果可能的话,我不想提出数千个请求.更具体地说,我必须在JSON文档的某些部分添加一些属性. 遵循以下指南:
我明白,使用补丁请求,我们一次只能更新一个文档,所以我try 这样发布(目前只有一个补丁操作示例)
POST http://host:port/v1/documents HTTP/1.1
Authorization: Basic autorization
Content-Type: multipart/mixed; boundary=BOUNDARY
--BOUNDARY
Content-Type: application/json
Content-Disposition: category=content; attachment; filename=/documents/first_document_to_update.json
X-HTTP-Method-Override: PATCH
{
"patch": [
{
<patch property insert definition>
}
]
}
--BOUNDARY--
但它只是在URI的Content-Disposal头上创建了一个具有Content From边界的文档.我还try 在POST请求上直接使用X-HTTP-METHOD-OVERRIDE标头,但也没有成功--我得到了
{
"errorResponse": {
"statusCode": 400,
"status": "Bad Request",
"messageCode": "REST-REQUIREDPARAM",
"message": "REST-REQUIREDPARAM: (err:FOER0000) Required parameter: uri"
}
}
因此,我的结论是,不可能使用一个POST请求对多个文档进行补丁更新,对吗?还是我错过了什么重要的东西?
MarkLogic版本:10