TypeError: string indices must be integers on ArangoDB

TypeError: string indices must be integers on ArangoDB

Arango 模块在访问数据库时出现奇怪的错误:

from arango import ArangoClient 
client = ArangoClient(hosts='http://localhost:8529/') 
sys_db = client.db('_system', username='root', password='root')
sys_db.databases()

错误如下:

Traceback (most recent call last): File "", line 1, in File "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/database.py", line 699, in databases return self._execute(request, response_handler) File "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/api.py", line 66, in _execute return self._executor.execute(request, response_handler) File "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/executor.py", line 82, in execute return response_handler(resp) File "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/database.py", line 697, in response_handler return resp.body['result'] TypeError: string indices must be integers

从 "packages/arango/database.py" 调用数据库模块给我同样的错误。

我的环境:

1) ubuntu 16.4

2) python-arango==5.2.1

感谢任何帮助。

如我所料,resp.body 不是您提供的数据类型。 database.pyline 697 正在期待其他内容。例如:

>>> data = "MyName"
>>> print(data[0])
'M'
>>> print(data['anything'])
TypeError: string indices must be integers

第一个 print 命令给出结果,而第二个命令抛出错误。

希望这可以解决您的问题。

如果您在某些服务器上运行它,则可能是服务器问题。至少对我来说是这样。我运行以下清除代理并且它工作正常。

export http_proxy=''