2017-07-27 84 views
0

我是python和燒瓶新手,並嘗試重定向帶標題的網址,無法導航,請爲我提供一個例子來解決這個問題。如何使用Flask中的注入參數重定向到url?

@app.route('/somepage') 
def somepage(): 
    headers={'SomeName':'whatever'} 
    return Response(redirect(url_for('home_page')),status=302, headers=headers) 

@app.route('/home_page') 
def home_page(): 
if request.headers['SomeName'] == 'whatever': 
    return render_template("home_page.html") 
else: 
    return Response(status=405) 

回答

1

燒瓶url_for函數可以接受任何數量的**值你可以用它來發送到重定向的視圖。

然後,您可以使用瓶重定向功能像這樣:

from flask import redirect 
... 
return redirect(url_for('home_page', headers=headers)) 

然後在函數中使用它:

@app.route('/home_page') 
def home_page(): 
if json.loads(request.args.get("headers"))["SomeName"] == "whatever": 
    return render_template("home_page.html") 
else: 
    return Response(status=405) 
+0

類型錯誤:重定向()得到了一個意想不到的關鍵字參數「頭''我收到這個錯誤 – Dedeepthika

+0

重定向到頁面,但無法渲染只是說錯誤的請求 – Dedeepthika

+0

請解釋此錯誤ValueError:期望屬性名稱括在雙引號:行1列2(字符1)在if request.args.get('headers')['SomeName'] =='whatever': – Dedeepthika