我正在使用 Flask 将一些数据处理代码公开为 Web 服务。我想要一些我的 Flask 函数可以访问的类变量。
让我带你走过我被困的地方:
from flask import Flask
app = Flask(__name__)
class MyServer:
def __init__(self):
globalData = json.load(filename)
@app.route('/getSomeData')
def getSomeData():
return random.choice(globalData) #select some random data to return
if __name__ == "__main__":
app.run(host='0.0.0.0')
当我在 Flask 之外运行 getSomeData()
时,它工作正常。但是,当我用 Flask 运行它时,我得到 500 internal server error
。这里没有魔法,Flask 不知道它应该初始化一个 MyServer
对象。如何将 MyServer 的实例提供给 app.run()
命令?
我 可以 承认失败并将 globalData
放入数据库。但是,还有别的办法吗?
原文由 solvingPuzzles 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以在端点范围之外创建
MyServer
的实例并访问其属性。这对我有用: