我目前正在尝试通过Python自动创建并填充一个集合。如前所述,我选择的数据库是 Arango 。我遇到的问题是出现错误:
[HTTP 401] [ERR 11]无权执行此请求
我关闭了防火墙,并尝试重新安装Arango,以检查是否在设置管理配置文件时遇到了麻烦,但是一切似乎都很好。到目前为止,我发现的唯一类似问题是this one,但这仍然与我的问题无关。
关于构建器,这是我的设置方法:
config={
"database": 'exampleDB',
"host":'localhost',
"protocol":'http',
"port":'8529',
"username":'someone',
"password":'xxxx'
}
设置权限配置是否还缺少其他功能?或问题可能出在其他地方。
我没有发布完整的代码,因为它是公司拥有的软件。
答案 0 :(得分:4)
对于pyArango,您需要在实例化Connection类时提供凭据:
from pyArango.connection import *
conn = Connection(username=config['username'], password=config['password'])
文档:https://bioinfo.iric.ca/~daoudat/pyArango/connection.html
对于python-arango,您首先需要一个客户端对象,然后调用db()
方法并提供数据库名称和凭据:
from arango import ArangoClient
client = ArangoClient(protocol='http', host='localhost', port=8529)
db = client.db('_system', username=config['username'], password=config['password'])
文档:https://python-driver-for-arangodb.readthedocs.io/en/master/overview.html
arango-python的原始存储库已被废弃五年,它不支持任何2.x或3.x服务器版本,而且我找不到用于身份验证的任何内容(在GitHub上搜索未获得“ auth的结果” “,”密码“,”用户“,”信用“)。 docs site更加陈旧。
ArangoPy项目似乎也已经死了,根据自述文件,它支持ArangoDB 2.2到2.6。没有给出身份验证的示例。 Client constructor确实采用了名为auth
的参数,但是用法仍不清楚(<username>:<password>
?)。