[英]Delete an object from an Elasticsearch response array
我正在尝试从Elasticsearch结果查询中删除和对象,但是无论我做什么,该对象都会保留:
这是我的代码:
exports.searchUserByKeyWord = (req, res) => {
User.search(byKeyWordQuery(req), geoDistance(), (err, users) => {
if (err) requestError(res, err)
let result = []
for(let user of users.hits.hits) {
delete user.address.full
result.push(user)
}
sendJsonResponse(res, 200, result)
})
}
就像您看到的那样,我使用的是delete,但不起作用,我在这里无法理解的事实是,当我用sendJsonResponse(res, 200, result[0].address.full)
替换sendJsonResponse(res, 200, result)
时sendJsonResponse(res, 200, result[0].address.full)
我发现此地址已成功删除,但是当我用邮递员测试我的API而不添加result[0].address.full
,address full字段仍然存在...
删除后要重新索引您的Elasticsearch数据吗? 即使您从磁盘上删除了文档,索引记录也可能会持续存在
有关更多信息,请阅读@ https://www.elastic.co/guide/en/elasticsearch/guide/current/update-doc.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.