我正在使用 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')
当我跑步时getSomeData()
在 Flask 之外,它工作得很好。但是,当我用 Flask 运行这个时,我得到500 internal server error
。这里没有魔法,Flask 不知道它应该初始化一个MyServer
目的。我如何将 MyServer 的实例提供给app.run()
命令?
I could认输并投入globalData
改为数据库。但是,还有别的办法吗?
您可以创建一个实例MyServer
就在端点的范围之外并访问其属性。这对我有用:
class MyServer:
def __init__(self):
self.globalData = "hello"
from flask import Flask
app = Flask(__name__)
my_server = MyServer()
@app.route("/getSomeData")
def getSomeData():
return my_server.globalData
if __name__ == "__main__":
app.run(host="0.0.0.0")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)