我使用Flask-PyMongo将我的Flask应用程序连接到mongodb atlas,但是我得到了这个错误。
"dns.exception.Timeout: DNS操作在30.000985383987427秒后超时“
然后它说:在处理上述异常的过程中,发生了另一个异常:
"pymongo.errors.ConfigurationError: DNS操作在30.000985383987427秒后超时“
代码如下:
from flask import Flask
from flask_pymongo import PyMongo
app = Flask(__name__)
app.config['MONGO_DBNAME'] = 'FirstCluster'
app.config['MONGO_URI'] = 'mongodb+srv://username:password@firstcluster-bblvc.mongodb.net/test?retryWrites=true'
mongo = PyMongo(app)
@app.route('/connect')
def connect_to_mongo():
return 'Connecting to Mongodb'
@app.route('/collections')
def adding():
user = mongo.db.users
user.insert({'name' : 'vatsalay'})
return 'Added User!'
if __name__ == '__main__':
app.run(debug=True)发布于 2020-03-15 08:42:26
请尝试使用其他连接字符串。我在3.6或更高版本的字符串上遇到了问题。只需使用3.4或更高版本的字符串,它就会立即连接。
如果您坚持使用较新的连接字符串,则需要安装pymongo srv
适用于Windows
pip install pymongo[srv]对于Mac
pip3 install pymongo[srv]在zsh上
pip3 install 'pymongo[srv]'发布于 2019-12-17 14:44:00
看起来你必须安装pymongosrv才能让mongodb+srv URI工作。
尝试使用pip3 install 'pymongo[srv]'安装它
发布于 2021-06-27 17:47:41
请尝试使用不同版本的连接字符串。您可以在集群-> connect ->中更改版本来连接您的应用程序。

https://stackoverflow.com/questions/55323483
复制相似问题