pip install Flask psycopg2-binary
import psycopg2
conn = psycopg2.connect(
database='your_database',
user='your_username',
password='your_password',
host='your_host',
port='your_port'
)
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route('/history/', methods=['GET'])
def get_history(n):
cursor = conn.cursor()
cursor.execute(f"SELECT * FROM your_table ORDER BY date DESC LIMIT {n}")
results = cursor.fetchall()
history = []
for result in results:
data = {
'id': result[0],
'date': result[1],
'value': result[2]
}
history.append(data)
cursor.close()
return jsonify(history)
这个路由函数接收一个整数参数n
,查询数据库表中最后的n个历史数据,将结果打包成JSON格式返回给客户端。
if __name__ == '__main__':
app.run(port=5000, debug=True)
启动应用后,可以使用浏览器或HTTP客户端(例如curl)访问API服务的端点,例如:
http://127.0.0.1:5000/history/10
该请求将返回数据库表中最后10个历史数据的JSON格式结果。