我正试图在Solr 4.10.3上使用JSON通过ID获得一个简单的REST删除。
这是cURL:
curl http://server:9080/solr/oaConfigTest/update -H 'Content-type:application/json' -d '[{"delete": {"id":"9e58bcd8"}}]'
我得到以下响应
Status: success
Response:
{
"responseHeader": {
"status": 0,
"QTime": 0
}
}
然而,文档并没有被删除(即使在提交之后),我在日志中收到了如下警告:
12/14/2015, 2:52:55 PM WARN DistributedUpdateProcessor Unknown operation for the an atomic update, operation ignored: id
列的实际名称是uuid,所以我也尝试了以下操作:
curl http://server:9080/solr/oaConfigTest/update -H 'Content-type:application/json' -d '[{"delete": {"uuid":"9e58bcd8"}}]'
Status: success
Response:
{
"responseHeader": {
"status": 0,
"QTime": 0
}
}
12/14/2015, 3:21:55 PM WARN DistributedUpdateProcessor Unknown operation for the an atomic update, operation ignored: uuid
有人能帮我按ID(字段名UUID)删除实际的JSON负载吗?
如果您的json负载以[
开头,Solr会认为您想要发送一个要插入/更新的文档列表。
如果你省略了起始方括号和结束方括号,你的删除请求应该有效:
{
"delete": {
"id": "9e58bcd8"
}
}