因ElasticSearch版本升级,导致的406错误解决方法

最近项目索引牵引到新的服务器,该服务器下载的ElasticSearch版本为6.6,比之前使用的版本号新一些。导致同样的查询query,在以前好用,但是现在却出现如下错误:

error: {"error":"Content-Type header [] is not supported","status":406}

由错误提示可知,应该是查询的query缺少header参数所致。原来使用的查询方式是:

response = requests.post(url, data=json.dumps(params), timeout=search_conf.REQUESTS_TIMEOUT, auth=(search_conf.ES_USER, search_conf.ES_PASSWD))

的确没有传header参数,所以在Post里面老老实实加上header参数如下: 

response = requests.post(url, data=json.dumps(params), headers={'content-type': 'application/json'}, timeout=search_conf.REQUESTS_TIMEOUT, auth=(search_conf.ES_USER, search_conf.ES_PASSWD))

则可以正常访问。 

此外,还有一个类似的错误,提示某个文件夹没办法提交更新,此文件夹下也没有.git文件夹。此时,可以尝试完全复制该文件夹内容到一个新的不同的名字的文件夹下,把原来的文件夹删除,此时git可以识别所做的改变,git提交新的文件夹,删除原来有问题的文件夹。之后如果需要,可以再把新的文件夹名字改回来即可。

猜你喜欢

转载自blog.csdn.net/u010483897/article/details/87799036