import os import mysql.connector as sql from werkzeug.exceptions import HTTPException, BadRequest from flask import Flask, g, request, json app = Flask(__name__) #[ DB 處裡 ]############################################################# # https://docsxyz.com/zh-hant/wiki/python/connector-python-connectargs db_config = { 'host' : "localhost", 'user' : "XXXX", 'passwd' : "XXXX", 'db' : 'XXXX', 'use_pure' : True, 'autocommit': True, 'charset' : 'utf8', } @app.before_request def before_request(): # 在 request 前開啟 DB 連線 # g 是 Flask global 在每個 request 有獨立的 context g.cnt = sql.connect(**db_config) g.cursor = g.cnt.cursor(dictionary = True) @app.after_request def after_request(response): # 在 request 後結束 DB 連線 cursor = g.get('cursor', None) if cursor is not None: # 當 cursor 還有 row 沒有取出,close 會發生錯誤 if cursor.with_rows : cursor.fetchall() cursor.close() cnt = g.get('cnt', None) if cnt is not None: cnt.close() return response
2023-02-21 10:05
[Python] Flask MySQL 連線管理
訂閱:
張貼留言 (Atom)
0 回應:
張貼留言