{"error": "ac-ietpzrc-shard-00-01.nctb2m7.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000) (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms),ac-ietpzrc-shard-00-02.nctb2m7.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000) (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms),ac-ietpzrc-shard-00-00.nctb2m7.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000) (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms), Timeout: 30s, Topology Description: <TopologyDescription id: 6658e8ba68f277049a92516d, topology_type: ReplicaSetNoPrimary, servers: [<ServerDescription ('ac-ietpzrc-shard-00-00.nctb2m7.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-ietpzrc-shard-00-00.nctb2m7.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000) (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms)')>, <ServerDescription ('ac-ietpzrc-shard-00-01.nctb2m7.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-ietpzrc-shard-00-01.nctb2m7.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000) (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms)')>, <ServerDescription ('ac-ietpzrc-shard-00-02.nctb2m7.mongodb.net', 27017) server_type: Unknown, rtt: None, error=AutoReconnect('ac-ietpzrc-shard-00-02.nctb2m7.mongodb.net:27017: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1000) (configured timeouts: socketTimeoutMS: 20000.0ms, connectTimeoutMS: 20000.0ms)')>]>"}
I am using Python Flask to set up a local backend server to connect to MongoDB Atlas. On my Mac I get the above error when I make a post request, but on my partner’s Windows computer, the post request is successful and updates the DB with no SSL error.
-We are on the same network.
-In the MongoDB cloud console, it’s set to take requests from any IP address.
-We are testing the same request in PostMan with the same body header etc.
The following is the code responsible for making the request.
from flask import Flask, request, jsonify
from pymongo import MongoClient
from bson.objectid import ObjectId
app = Flask(__name__)
mongo_uri = "<connection string omitted but the same on both computers>"
client = MongoClient(mongo_uri)
db = client.get_database("EduTracker") # replace 'testcluster' with your database name
@app.route('/students', methods=['POST'])
def create_student():
if request.content_type != 'application/json':
return jsonify({"error": "Content-Type must be application/json"}), 415
data = request.get_json(force=True, silent=True) # force=True to handle empty body
if data is None:
return jsonify({"error": "No input data provided"}), 400
name = data.get('name')
parent_contact = data.get('parent_contact')
new_student = {
'name': name,
'parent_contact': parent_contact
}
try:
result = db.students.insert_one(new_student)
student_id = str(result.inserted_id)
return jsonify({"message": "Student created successfully", "student_id": student_id}), 201
except Exception as e:
return jsonify({"error": str(e)}), 500
if __name__ == '__main__':
app.run(port=8000, debug=True)
We have tried connecting to different WiFi networks, using mobile data, changing ports, and allowing the database to take connections from any IP.
Luis Ferrer is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.