国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

11.保存登錄狀態(tài)與注銷功能

wayneli / 3151人閱讀

摘要:目前我們的已經(jīng)完成了注冊和登錄功能,當(dāng)?shù)卿洺晒χ螅撁嫣D(zhuǎn)到首頁,此時我們需要保存用戶的登錄狀態(tài),不管頁面如何跳轉(zhuǎn),除非用戶自己注銷登錄。

目前我們的demo已經(jīng)完成了注冊和登錄功能,當(dāng)?shù)卿洺晒χ螅撁嫣D(zhuǎn)到首頁,此時我們需要保存用戶的登錄狀態(tài),不管頁面如何跳轉(zhuǎn),除非用戶自己注銷登錄。


如之前所說,我們可以用session來保存用戶登錄的這個狀態(tài),當(dāng)?shù)卿涷炞C成功的時候,將當(dāng)前登錄的username存入session,并設(shè)置sessionpermanent屬性為True(這樣下次打開瀏覽器仍然是登錄的狀態(tài)),這一步很簡單,login函數(shù)修改如下:

@app.route("/login/", methods=["GET", "POST"])
def login():
    #...省略...
        if "成功" in message:
            session["username"] = username
            session.permanent = True
            return redirect(url_for("home"))
    #...省略...

登錄成功之后,發(fā)現(xiàn)導(dǎo)航條右邊的文字還是這個鬼樣子:

我們需要修改它,設(shè)計成登錄成功之后,這一部分顯示用戶名和注銷按鈕。用 9.注冊和登錄功能實現(xiàn)(2)—— 注冊與登錄的錯誤提示 提到的@app.context_processor上下文管理器,把當(dāng)期登錄的用戶名傳遞給html:

@app.context_processor
def my_context_processor():
    user = session.get("username")
    if user:
        return {"login_user": user}
    return {}

然后在base.html中修改導(dǎo)航條原先登錄和注冊的部分如下:

{% if login_user %}
    
  • 用戶:{{ login_user }}
  • 注銷
  • {% else %}
  • 登錄
  • 注冊
  • {% endif %}

    此時,登錄成功后,導(dǎo)航條就變成如下樣式了:

    上面的代碼,我們把注銷關(guān)聯(lián)到了一個logout視圖函數(shù),這個也很好寫,用sessionclear方法清除session中的內(nèi)容,然后跳轉(zhuǎn)回首頁:

    @app.route("/logout/")
    def logout():
        session.clear()
        return redirect(url_for("home"))

    用戶名的那部分,我們后續(xù)設(shè)計一個可以更改頭像和修改密碼的頁面,點(diǎn)擊用戶名跳轉(zhuǎn)過去,這里就先寫一個#

    文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

    轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/41265.html

    相關(guān)文章

    • Vue中的驗證登錄狀態(tài)

      摘要:用存儲用戶路由守衛(wèi)路由中設(shè)置的字段就在當(dāng)中每次跳轉(zhuǎn)的路徑登錄狀態(tài)下訪問頁面會跳到如果沒有訪問任何頁面。一個簡單的保存登錄狀態(tài)的小。 Vue項目中實現(xiàn)用戶登錄及token驗證 先說一下我的實現(xiàn)步驟: 使用easy-mock新建登錄接口,模擬用戶數(shù)據(jù) 使用axios請求登錄接口,匹配賬號和密碼 賬號密碼驗證后, 拿到token,將token存儲到sessionStorage中,并跳轉(zhuǎn)到首...

      draveness 評論0 收藏0
    • Spring整合Netty、WebSocket的互聯(lián)網(wǎng)聊天系統(tǒng)

      摘要:當(dāng)用戶注銷或退出時,釋放連接,清空對象中的登錄狀態(tài)。聊天管理模塊系統(tǒng)的核心模塊,這部分主要使用框架實現(xiàn),功能包括信息文件的單條和多條發(fā)送,也支持表情發(fā)送。描述讀取完連接的消息后,對消息進(jìn)行處理。 0.前言 最近一段時間在學(xué)習(xí)Netty網(wǎng)絡(luò)框架,又趁著計算機(jī)網(wǎng)絡(luò)的課程設(shè)計,決定以Netty為核心,以WebSocket為應(yīng)用層通信協(xié)議做一個互聯(lián)網(wǎng)聊天系統(tǒng),整體而言就像微信網(wǎng)頁版一樣,但考慮...

      My_Oh_My 評論0 收藏0
    • web登錄分析(簡單登錄單點(diǎn)登錄

      摘要:系統(tǒng)從認(rèn)證中心得到校驗成功的結(jié)果后,則可以認(rèn)為用戶已登錄。認(rèn)證中心發(fā)現(xiàn)用戶未登錄沒有,將用戶引導(dǎo)至登錄界面。用戶提交登錄信息到認(rèn)證中心。 簡單登錄 登錄流程 首先讓我們分析一下一個簡單的登錄是怎么實現(xiàn)的。 一個簡單的登錄流程 用戶輸入url訪問站點(diǎn),接受用戶請求后判斷用戶是否已經(jīng)登錄,若未登錄則跳轉(zhuǎn)到登錄頁面 用戶訪問登錄頁面,填寫并提交登錄表單 web應(yīng)用對登錄表單進(jìn)行驗證,若...

      jasperyang 評論0 收藏0
    • 19.設(shè)置服務(wù)器端Session【番外】

      摘要:在保存登錄狀態(tài)與注銷功能這篇文章中,我們使用了來保存,實際上默認(rèn)的功能,是客戶端,與之相對的是服務(wù)器端。今天我們來實現(xiàn)服務(wù)器端,原理很簡單,實際上在編程實現(xiàn)和這篇文章中我們已經(jīng)做過了。現(xiàn)在我們用數(shù)據(jù)庫來保存,并為其設(shè)置有效期。 在11.保存登錄狀態(tài)與注銷功能這篇文章中,我們使用了session來保存username,實際上Flask默認(rèn)的session功能,是客戶端session(cl...

      Joyven 評論0 收藏0

    發(fā)表評論

    0條評論

    最新活動
    閱讀需要支付1元查看
    <