簡體   English   中英

Flask:手動保存會話數據

[英]Flask: Saving session data manually

我有一個使用ajax請求的Flask應用程序,該請求應該給出一個true / false響應。 用戶輸入授權碼,如果授權碼與會話中需要的或已經存在的匹配,則響應應該為true,並將該代碼添加到會話中並保存。 如果不是,則返回false

@app.route('/auth-ajax', methods=['POST'])
def auth(): 
    result_id = request.form.get('result_id', 'true')
    result = load_result(result_id)

    if result:
        auth = result['auth_hash']
        auth_input = request.form.get('auth_input', '')
        if (session.get('auths').get(result_id) != auth and auth_input != auth):
            return 'false'

    #else, save new authorization into session
    session['auths'][result_id] = auth

    # return true
    return 'true'

但是,會話並沒有像我希望的那樣保存。 這是我的第一個Python應用程序,因此我正在學習。 據我了解,我需要使用Flask創建響應,而不僅僅是輸出“ true”或“ false”-創建響應可以保存會話,因為它不保存修改內容。 我使用的唯一響應函數是用於視圖的render_template(),但是我不想要視圖,而是想要一個簡單的true / false(可能是HTTP狀態響應)來查看是否已授權。 我將如何去做呢?

找到了問題。 我只需要添加session.modified = True 很簡單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM