Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我需要尽快向服务器发送响应,然后在flask中执行函数?_Python_Flask_Werkzeug - Fatal编程技术网

Python 我需要尽快向服务器发送响应,然后在flask中执行函数?

Python 我需要尽快向服务器发送响应,然后在flask中执行函数?,python,flask,werkzeug,Python,Flask,Werkzeug,我读了很多关于我的问题的解决方案,我找到了一个。但这只是为单个URL路由定义的。现在,如果我想对两个URL执行相同的操作,我不能这样做 这是一个用于单个url的解决方案,但我想为两个url返回两个不同的响应,相反,它为两个url返回相同的响应 导入回溯 进口烧瓶 导入时间 从werkzeug.wsgi导入ClosingIterator 课后反应: 定义初始化(self,app=None): self.callbacks=[] 如果应用程序: self.init_应用程序(应用程序) 定义调用(自

我读了很多关于我的问题的解决方案,我找到了一个。但这只是为单个URL路由定义的。现在,如果我想对两个URL执行相同的操作,我不能这样做

这是一个用于单个url的解决方案,但我想为两个url返回两个不同的响应,相反,它为两个url返回相同的响应

导入回溯
进口烧瓶
导入时间
从werkzeug.wsgi导入ClosingIterator
课后反应:
定义初始化(self,app=None):
self.callbacks=[]
如果应用程序:
self.init_应用程序(应用程序)
定义调用(自我,回调):
self.callbacks.append(回调)
返回回调
def初始应用程序(自身,应用程序):
#安装扩展插件
app.after_response=self
#安装中间件
app.wsgi_app=afterresponsemiddware(app.wsgi_app,self)
def冲洗(自):
对于self.callbacks中的fn:
尝试:
fn()
除例外情况外:
traceback.print_exc()
类AfterResponseMD软件:
定义初始(自我、应用、响应后ext):
self.application=应用程序
self.after\u response\u ext=after\u response\u ext
定义呼叫(自我、环境、响应后):
迭代器=self.application(环境,响应后)
尝试:
返回ClosingIterator(迭代器[self.after\u response\u ext.flush])
除例外情况外:
traceback.print_exc()
返回迭代器
app=烧瓶。烧瓶(“响应后”)
后响应(app)
@app.after\u响应
def after_deal():
时间。睡眠(10)
打印(“完成”)
@app.route(“/hello/”)
def你好(id):
返回“你好,世界!”
@app.route(“/fun”)
def fun():
返回“Hello Fun”
如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
app.run(debug=True)
现在我想要的是,当我调用“hello/id”URL时,after_响应应该返回“Done”,但当我调用“fun”URL时,after_响应应该返回“fun Done”。这与您向我建议的解决方案不同。因为它不是由您的解决方案完成的。
我将感谢任何帮助。 谢谢

可能的副本可能的副本