我试图通过弹性搜索为一些数据建立索引,但是遇到了奇怪的行为。
如果我的代码是:
import requests
#data = {'key': 'value'}
data = {'v': 'pf'}
#data = generate_document()
print(data)
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.post('http://localhost:9200/qa/_doc', data=json.dumps(data), headers=headers)
print(r.status_code)
我得到201
作为响应代码。
但是如果我有data = {'va': 'pf'}
,出于某种原因,我会得到400
状态代码。
为什么发生这些奇怪的事情?
基本上,我想随机生成data
并将其编入索引。大多数情况下,它会抛出400
。但是像data = {"key": "value"}
这样的常规事物还是可以的。
答案 0 :(得分:1)
尝试:
import requests
#data = {'key': 'value'}
data = {'v': 'pf'}
#data = generate_document()
print(data)
headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
r = requests.post('http://localhost:9200/qa/_doc', json=data, headers=headers)
答案 1 :(得分:1)
状态码400可能有多种原因:
可能还有其他人。