我使用官方的elasticsearch-py库连接到Elasticsearch的本地实例(localhost,端口9200,ES版本1.6.0)。这在独立的Python脚本中很好地工作,但是我无法使它与Google App Engine一起工作,在那里我得到以下错误:
No handler found for uri [http://localhost:9200/transaction/websession/_search] and method [GET]
经过一些调试,我将问题缩小到appengine对urlphetch RPC代理使用httplib
。在
所以基本上,我可以这样做:
^{pr2}$但不是这个:
c = httplib.HTTPConnection('localhost:9200')
c.request('GET', 'http://localhost:9200/transaction/websession/_search', None, {})
c.getresponse().read()
这是Python中的bug吗?或者在Elasticsearch里?我错过了什么?在
我找到了答案。问题是当前的App Engine SDK。请求是这样创建的:
当它应该是:
^{pr2}$奇怪的是urlphetch存根的latest source code version似乎与{a2}非常不同。
相关问题 更多 >
编程相关推荐