TypeError:字符串索引在ArangoDB上必须是整数



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 697database.py期待别的东西。例如:

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

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

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

最新更新