假设我使用ajax调用触发多个Python函数。有没有办法接收多个响应(表明它们都已成功?)。一个抽象的例子:
function triggerPython(){
$.ajax({
url:"/triggerPython",
type:'POST',
data: whatever,
success: function(response){
alert(response);
}
});
}
蟒蛇:
class triggerPython(webapp.RequestHandler):
def post(self):
function_1()
self.response.out("Function 1 done!")
function_2()
self.response.out("Function 2 done!")
function_3()
self.response.out("Function 3 done!")
答案 0 :(得分:2)
不,这是不可能的。将输出刷新到浏览器可能似乎就像一种方法,但GAE不这样做。它立即发送完整的响应并一起发送。 Check the docs
作为替代方案,您可以创建民意调查第一个呼叫进度的另一个服务(第二个呼叫)。请注意,响应的时间限制为~60秒。或者,如果您的用例允许,请尝试拆分3个进程并逐个调用。