如何解决elasticsearch7 python search() api 使用 HTTP POST 方法而不是 HTTP GET
{
"mappings": {
"properties": {
"join_field": {
"type": "join","relations": {
"job": "checkpoint"
}
}
}
}
}
当我执行
GET /job-index/_search
{
"query": {
"term": {
"join_field.name": "job"
}
}
}
它返回工作类型的所有文档。
但是当我使用 HTTP POST 执行相同的查询时,它返回 0 个命中。
我使用的是 elasticsearch7 python,它使用 HTTP POST 作为搜索 API。下面是我使用的python代码
from elasticsearch7 import Elasticsearch
es7 = Elasticsearch('localhost:9200')
resp = es7.search(body=json.dumps(payload),index=self.job_index)
下面是日志
DEBUG:urllib3.connectionpool:http://localhost:9200 "POST /job-index/_search HTTP/1.1" 200 160
INFO:elasticsearch:POST http://localhost:9200/job-index/_search [status:200 request:0.006s]
DEBUG:elasticsearch:> {"query": {"term": {"join_field.name": "job"}}}
DEBUG:elasticsearch:< {"took":2,"timed_out":false,"_shards":{"total":1,"successful":1,"skipped":0,"Failed":0},"hits":{"total":{"value":0,"relation":"eq"},"max_score":null,"hits":[]}}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。