2016-11-03 103 views
0

我有一个Flask应用程序需要一个url,做一些逻辑并将用户重定向到另一个url。我想只生成一个静态HTML页面,基本上说“请等待”,而逻辑执行。 有没有一种很好的方式来做这样的jQuery异步的东西?Flask静态HTML页面重定向时

app = Flask(__name__) 

@app.route('/stuff/morestuff/') 
def stuff(): 
    #can I load html here without a return()? 

    #request.args input url, calls out to api, generates new url 
    return redirect(url) 
+0

当然,只要做一个ajax调用,并添加一个请等待文本的东西,然后删除它时,请求完成。在JavaScript中。 – davidism

+0

您能否详细介绍一下?首先进行ajax调用,然后在发生重定向时删除文本? – Malakaman

回答

0

它不这样工作。当你的服务器发出一个HTTP请求时,服务器会发回一个响应。这可能是成功,重定向或其他几种类型的响应。很少有理由去做你正在描述的内容,因为用重定向进行响应通常是一种快速操作。

但是,如果您确实想要实现这种行为,您需要做出成功响应并让您响应的页面处理使用javascript的重定向。此时,您可以使用JS执行所有逻辑客户端,或者使用AJAX/websockets与服务器通信以获取更多信息,同时让用户等待。请记住,此方法要求用户启用JavaScript,这对于简单的重定向来说不应该是必需的。