Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
P
PROG2900
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Sara Savanovic Djordjevic
PROG2900
Commits
ce597117
Commit
ce597117
authored
1 year ago
by
Sara Savanovic Djordjevic
Browse files
Options
Downloads
Patches
Plain Diff
update: working DB connection
parent
954577b4
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
server/MongoCert.pem
+81
-0
81 additions, 0 deletions
server/MongoCert.pem
server/main.py
+11
-35
11 additions, 35 deletions
server/main.py
with
92 additions
and
35 deletions
server/MongoCert.pem
0 → 100644
+
81
−
0
View file @
ce597117
-----BEGIN CERTIFICATE-----
MIIFCzCCAvOgAwIBAgIIJciHvv6Yi4gwDQYJKoZIhvcNAQELBQAwSTEhMB8GA1UE
AxMYNjViYjZkMjVjNWE2NzgxMWUxOWMyYjY3MQ4wDAYDVQQLEwVBdGxhczEUMBIG
A1UEChMLTW9uZ29EQiBJbmMwHhcNMjQwMjAxMDkyMDE0WhcNMjYwMjAxMTAyMDE0
WjAWMRQwEgYDVQQDDAtjZXJ0X2FjY2VzczCCAiIwDQYJKoZIhvcNAQEBBQADggIP
ADCCAgoCggIBAMXNw9D4fe6IWhmOw1emqk5RETZXSCuyh0+uQNyXkQ0OVdl8j1TY
zXqpuvvilz/axIkSba9dMTx/ejKECPmaIlZC6vTgmzdHgftXsm8iBP1audnV36MG
6jvqM7qe1/lQdsDbi94mSLd13/l5hgrENpUgCzp76krcC5wusXLl3OizsYpwrRw6
uwiZm9DxoSIW87ClWJbklP3XLJHfg2lIPjEcdSHSJkLEcUNzmggYXt4OfiSx8zlr
C6X93zgbPMQZqfO3k3B9hrFzuKDqlIvIm4y3GVuZ0Xj6ncDq262nB4+V+YTAWDRK
5CkKZVJlig4ePd5zTsB2hzJnLBWRlor3L756kcdm/2YtkEijQrewOd4RCOcz5Jx6
aZdYQMzUPgVJXh0gtNzY/+wq2WBCcypM22WW8/3678iJoIG4hIXsWVtJOubqovB+
jsbyGMp+5fk1Kqgo7AkiDT7ld/8O60FeR4i7Pa7tiikKKyhg1SnqCwueTzIv43x4
DciEXKKJRFFwbhTKL2Ty3UkFqYtqD9drXT0p7c9XUs5tzO/Jsx1D+KUq0UosP/Cv
fwp5W31pwjeJyEKHrrVIMj3G/+x5wfmIcsKxj+q00NSerx6WYB5ds7BiMZWDqBWT
Oaj/1w5IY7BDkEslYgkpwosw/CGIYrvLqKpWk0l1L5OgaSjouMLbTAiBAgMBAAGj
KjAoMA4GA1UdDwEB/wQEAwIHgDAWBgNVHSUBAf8EDDAKBggrBgEFBQcDAjANBgkq
hkiG9w0BAQsFAAOCAgEAeoAdO4BMhhqrfka11JHTggyEkBR742LpV4epKWVLFnru
b6+mZrWVCjKaYmOep1u/3f3imtz6Y9L0zFUBVLsE1scqWNK10gZyChrGJuVlOXRM
NXpoLtOvQUxdJmFPmbnBtP3N3GwdTlq7v8kkyoV0z0KoFxHvPIujlCuHPkY4iQc/
lJYpyzNSmrC3Nyk8jS5QksYaR3A1Ol2puJiqwZBDfl+0ECSS8ovScK4ccYqyo4ze
NT5Uwc0Hr2oHbY4CRViZm+VllwanKeYhFAR3zoLIk5MIh4YlwerZqYRadoKhmRty
1bIEOjeRXoZusF8lIF0/BSaYEnel3xCH5umQWyRUlOkAOnwbqtfY6EaW7xwNFHsS
D34sPvxRJHh9jnCv1127kb3S5aXO+uvqebhdBrP8SOq9pwMgVGhM9y6RsDfz6g78
Xj8ICrS7Ls+Rah4IX2cPkHkEd7CXuQ7Gsr8jY3RSTBoC1/u98mNIFrkaTYBWqGL4
X7m9rFWeI4zLwYHPsKO9hwI9+HwaKiVkE4L5tu1Ur0evougxg0T+Eu4VdC1Z6qbg
JJgbUz6oLtUU9Y4Wp2EHQGTzBTA2+1s7PBMQp/49SxpS0N6JILWtSXOqRQ3BQS6p
Zj0k4adusbJ82cMdImcpjjhUlt58kZ2Ms6F5nUU8Tw+XVDxaId2fZ+GhGTgse4I=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
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
RfOGEADT0A6yOPYYFn8dEALhBSz7
-----END PRIVATE KEY-----
This diff is collapsed.
Click to expand it.
server/main.py
+
11
−
35
View file @
ce597117
...
...
@@ -4,41 +4,17 @@ from pymongo.server_api import ServerApi
app
=
Flask
(
__name__
)
# Default route
@app.route
(
'
/
'
)
def
home
():
return
jsonify
(
message
=
'
Welcome to the API!
'
)
uri
=
"
mongodb+srv://icemapcluster.i02epob.mongodb.net/?authSource=%24external&authMechanism=MONGODB-X509&retryWrites=true&w=majority
"
try
:
client
=
MongoClient
(
uri
,
tls
=
True
,
tlsCertificateKeyFile
=
'
server/MongoCert.pem
'
,
server_api
=
ServerApi
(
'
1
'
))
# Example endpoint
@app.route
(
'
/api/data
'
,
methods
=
[
'
GET
'
])
def
get_data
():
data
=
{
'
example_data
'
:
[
1
,
2
,
3
,
4
,
5
]}
return
jsonify
(
data
)
db
=
client
[
'
IceMapDB
'
]
collection
=
db
[
'
IceData
'
]
print
(
"
Connected to MongoDB
"
)
# Initialise database connection
def
init_db
():
# Initialise database connection
uri
=
"
mongodb+srv://icemapcluster.i02epob.mongodb.net/?authSource=%24external&authMechanism=MONGODB-X509&retryWrites=true&w=majority
"
try
:
client
=
MongoClient
(
uri
,
tls
=
True
,
tlsCertificateKeyFile
=
'
server/X509-cert-2722575229130410888.pem
'
,
server_api
=
ServerApi
(
'
1
'
))
db
=
client
[
'
IceMapDatabase
'
]
collection
=
db
[
'
GeoDataCollection
'
]
# Ping to check connection
client
.
admin
.
command
(
'
ping
'
)
print
(
"
Connected to MongoDB!
"
)
except
ConnectionFailure
as
e
:
print
(
f
"
Failed to connect to MongoDB:
{
e
}
"
)
if
__name__
==
"
__main__
"
:
init_db
()
\ No newline at end of file
except
Exception
as
e
:
print
(
f
"
Failed to connect to MongoDB:
{
e
}
"
)
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment