python - 尝试连接到 CosmosDB 数据库时出现 pymongo.errors.ServerSelectionTimeoutError
问题描述
我在尝试从本地计算机连接到 CosmosDB 数据库时收到 Getting pymongo.errors.ServerSelectionTimeoutError。
uri = "uri given by the CosmosDB console"
client = pymongo.MongoClient(uri)
db = client.test
collection = db.test
collection.insert_one({"field1": "foo", "field2": "bar"})
在它抛出的最后一条语句中:pymongo.errors.ServerSelectionTimeoutError: connection closed
我也尝试添加一些博客文章推荐的 ssl_cert_reqs=CERT_NONE 参数,但它仍然抛出相同的错误。我正在使用 pymongo 3.10.1
解决方案
我之前遇到过同样的问题,您可以?ssl=true&ssl_cert_reqs=CERT_NONE
在传递给 MongoClient 的字符串中的数据库名称之后添加,看起来像,
db_name = os.getenv("MONGO_DB")
host = os.getenv("MONGO_HOST")
port = 10255
username = os.getenv("MONGO_USERNAME")
password = os.getenv("MONGO_PASSWORD")
args = "ssl=true&retrywrites=false&ssl_cert_reqs=CERT_NONE"
connection_uri = f"mongodb://{username}:{password}@{host}:{port}/{db_name}?{args}"
推荐阅读
- php - 从具有多个值的数组中获取键
- javascript - 在 Visual Studio 中使用远程引用调试 Javascript
- javascript - 正则表达式匹配一组中的 1 个或两个字符,并确保它们不同
- angular - 通过 Id 材质手风琴打开关闭面板
- jquery - Jquery Datatable:对象不支持属性或方法'Draw' asp.net
- javascript - 我们可以将哪些信息作为参数传递给内联事件处理程序?
- codenameone - 代号一 - 仅在 Internet 连接可用时执行代码
- javascript - Tomcat 端点 CORS 策略响应没有“Access-Control-Allow-Origin”标头
- android - 在不同的手机屏幕上查看 FMX Android 平台的 Form.Width 大小有多少像素?
- javascript - 航路点未调用部分