我正在尝试使用Flask中的MongoKit连接并验证远程数据库主机(dotcloud,mongolabs等).连接到服务器似乎工作正常.但是我无法对数据库进行身份验证.据推测这应该工作:
from mongokit import Connection
connection = Connection(my_remote_host,my_remote_port)
connection.my_database.authenticate(my_admin_user,my_admin_password)
对authenticate()的调用返回True,但后续调用获取数据抛出:
OperationFailure: database error: unauthorized db
有人知道这里会发生什么吗?
最佳答案
这可能是由于pymongo中authenticate()的当前行为. Pymongo不会在线程之间缓存身份验证凭据,因此每个线程都必须单独进行身份验证.有关在多线程环境中使用authenticate()的信息,请参阅note in the pymongo documentation.
原文链接:https://www.f2er.com/python/439166.html