python - UWSGI 没有新鲜的 mysql 查询结果或 SP
问题描述
实际上我正在学习 python、flask 和 mysql。
我使用以下代码构建了一个宁静的 api:
from flask import Flask, request, jsonify
from flask_restful import Resource, Api, reqparse
from flask_httpauth import HTTPBasicAuth
from mysql.connector import errorcode
import mysql.connector
from flask_cors import CORS
from db import ObtenerMarcaciones, ObtenerRelojes
app = Flask(__name__)
api = Api(app)
auth = HTTPBasicAuth()
CORS(app, support_credentials=True)
#coneccion BD
try:
db = mysql.connector.connect(user='XXX',
password='XXx',
host='XXX',
database='rrhhMarcaciones')
except mysql.connector.Error as err:
if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
print("Error en usuario y/o clave")
elif err.errno == errorcode.ER_BAD_DB_ERROR:
print('La BD no existe')
else:
print(err)
class Marcaciones(Resource):
def get(self):
data = ObtenerMarcaciones()
return jsonify(data)
def ObtenerMarcaciones():
json_data = []
try:
cursor = db.cursor(buffered=True)
idreloj = ([1])
cursor.callproc('SP_TodasMarcaciones', idreloj)
except mysql.connector.Error as err:
json_data = {'Error': str(err)}
else:
headers = {'MARCACION', 'USUARIO', 'CI'}
for p_resultado in cursor.stored_results():
pMarcaciones = p_resultado.fetchall()
for element in pMarcaciones:
json_data.append(dict(zip(headers, element)))
finally:
cursor.close()
return json_data
API,在 nginx 中,UWSGI 工作没有问题,但是
API 始终显示查询或 SP 的相同结果,直到我重新启动 UWSGI 服务。
示例:如果我将一些数据添加到 API 正在获取数据的表中,我将永远无法通过 API 获取,直到我重新启动 UWSGI 服务。
我的 UWSGI 配置文件:
module = wsgi:app
logger = file:/home/flask_api/AsistenciaAPI/logs/uwsgi_AsistenciaAPI.log
master = true
processes = 5
socket = /home/flask_api/AsistenciaAPI/AsistenciaAPI.sock
chmod-socket = 660
vacuum = true
die-on-term = true
我感谢任何帮助!谢谢!
解决方案
推荐阅读
- java - 使用 .toArray() 将 ArrayList 转换为 Int [] 数组?或者...?
- angular - 根据位置找出给定数字的小数分隔符
- visual-studio-code - How can I remove this Git helper button bar in VSCode?
- python - Load data from Google Datastore to Google Cloud ML Engine
- javascript - 如何“要求”一个 xml 文件(由 webpack 加载)以读取 javascript 中的 xml 内容
- oracle - 通过脚本动态重命名索引和约束
- java - How to show an input is invalid in this java code
- javascript - 渲染多个输入反应
- ios - 请求的资源不支持使用 Alamofire 的 http 方法“T”(或“ST”)
- java - 角度不使用 [UTC] 转换 json 日期