REST APi
This commit is contained in:
@@ -1,15 +1,16 @@
|
|||||||
from flask import Flask, request
|
from flask import Flask, request
|
||||||
import mysql.connector
|
import mysql.connector
|
||||||
|
from queries import *
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
|
||||||
@app.route('/')
|
@app.route('/')
|
||||||
def index():
|
def index():
|
||||||
node = request.args.get('node', default = None)
|
node = request.args.get('node', default = None)
|
||||||
dataType = request.args.get('dataType', default = None)
|
dataType = request.args.get('dataType', default = None)
|
||||||
return getData(node, dataType)
|
MAC = request.args.get('MAC', default = None)
|
||||||
|
return getData(node, dataType, MAC)
|
||||||
|
|
||||||
def getData(node, dataType):
|
def getData(node, dataType, MAC):
|
||||||
try:
|
try:
|
||||||
mydb = mysql.connector.connect(
|
mydb = mysql.connector.connect(
|
||||||
host="localhost",
|
host="localhost",
|
||||||
@@ -17,20 +18,12 @@ def getData(node, dataType):
|
|||||||
password="Dingleberries69!",
|
password="Dingleberries69!",
|
||||||
database="NodeData"
|
database="NodeData"
|
||||||
)
|
)
|
||||||
#turn this into a switch statement
|
|
||||||
cursor = mydb.cursor()
|
query = get_query(node, dataType, MAC)
|
||||||
if node:
|
cursor = mydb.cursor(dictionary=True) # Enable dictionary output
|
||||||
query = f"SELECT * FROM Measurement WHERE NodeID = {node}"
|
|
||||||
elif dataType:
|
|
||||||
query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'"
|
|
||||||
else:
|
|
||||||
query = "SELECT * FROM `Measurement`"
|
|
||||||
cursor.execute(query)
|
cursor.execute(query)
|
||||||
result = cursor.fetchall() # Fetch the results
|
result = cursor.fetchall() # Fetch the results
|
||||||
|
|
||||||
# Convert the results to a string for display
|
|
||||||
result_str = ', '.join([str(row) for row in result])
|
|
||||||
|
|
||||||
cursor.close()
|
cursor.close()
|
||||||
mydb.close()
|
mydb.close()
|
||||||
|
|
||||||
|
12
server/Flask/queries.py
Normal file
12
server/Flask/queries.py
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
def get_query(node, dataType, MAC):
|
||||||
|
if node and dataType:
|
||||||
|
query = f"SELECT * FROM Measurement WHERE NodeID = {node} AND Type = '{dataType}'"
|
||||||
|
elif node:
|
||||||
|
query = f"SELECT * FROM Measurement WHERE NodeID = {node}"
|
||||||
|
elif dataType:
|
||||||
|
query = f"SELECT * FROM Measurement WHERE Type = '{dataType}'"
|
||||||
|
elif MAC:
|
||||||
|
query = f"SELECT * FROM Node WHERE MAC = '{MAC}'"
|
||||||
|
else:
|
||||||
|
query = "SELECT * FROM `Measurement`"
|
||||||
|
return query
|
Reference in New Issue
Block a user