Arango 模块在访问数据库时给出一个奇怪的错误:
from arango import ArangoClient
client = ArangoClient(hosts='http://localhost:8529/')
sys_db = client.db('_system', username='root', password='root')
sys_db.databases()
下面是错误:
回溯(最近一次调用(:文件 ",第 1 行,在 文件 "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/database.py", 第 699 行,在数据库中 return self._execute(request, response_handler( File "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/api.py", 66号线,_execute 返回 self._executor.execute(request, response_handler( 文件 "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/executor.py", 第 82 行,执行中 return response_handler(resp( File "/home/ubuntu/arangovenv/lib/python3.6/site-packages/arango/database.py", 697路,response_handler return resp.body['result'] TypeError: 字符串索引必须是整数
从"packages/arango/database.py"调用数据库模块,给我同样的错误。
我的环境:
1( 乌班图16.4
2( python-arango==5.2.1
任何帮助表示赞赏。
如果您在某个服务器上运行它,则可能是服务器问题。至少在我的情况下是这样。我运行以下内容以清除代理,它工作正常。
export http_proxy=''
正如我所猜测的,resp.body
不是您提供的数据类型。line 697
database.py
期待别的东西。例如:
>>> data = "MyName"
>>> print(data[0])
'M'
>>> print(data['anything'])
TypeError: string indices must be integers
第一个print
命令给出结果,而秒命令抛出错误。
我希望这可以解决您的问题。