亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Laravel 關閉登錄時記住我

Laravel 關閉登錄時記住我

PHP
狐的傳說 2023-05-12 15:38:52
我正在使用 laravel/ui 包,你可以在這里看到: https: //laravel.com/docs/7.x/authentication#included-routing我想讓用戶在登錄時選擇是否要記住他。但是,默認設置似乎是記住每個用戶。根據文檔,LoginController 附帶記住我的功能:https://laravel.com/docs/7.x/authentication#remembering-users我的問題是如何更改或覆蓋 LoginController,以便用戶可以通過復選框決定是否應該記住他。提前致謝!希望你能幫助我,我對 Laravel 很陌生
查看完整描述

2 回答

?
慕森王

TA貢獻1777條經驗 獲得超3個贊

Laravel UI 包會處理它。但是,如果您更改登錄查看您并添加您自己的記住我復選框,您必須注意此復選框具有 name="remember" 因為 LoginController 使用檢查輸入“remember”而不是“remember_me”的特征或其他東西。

此外,我對記住我的功能是錯誤的:記住我意味著如果會話超時你仍然保持登錄狀態。laravel 會話在 2 小時后超時。要快速測試您的記住我復選框是否有效,您可以將 .env 文件設置更改為 SESSION_LIFETIME=1 而不是 SESSION_LIFETIME=120 并在選中記住我復選框的情況下登錄到您的頁面。等待一分鐘以上的時間,然后關閉瀏覽器窗口。如果您隨后使用相同的瀏覽器再次訪問您的網站并登錄(即使會話超時),您將被記住。

記住我并不意味著,當您關閉瀏覽器窗口并再次訪問該站點并在會話生命周期內自動登錄時,您會被記住。記住我只有在會話生命周期結束時!

我知道我在回答我自己的問題,希望它能幫助遇到同樣問題的人。如果我仍然有問題,請告訴我。


查看完整回答
反對 回復 2023-05-12
?
呼啦一陣風

TA貢獻1802條經驗 獲得超6個贊

請記住用戶不是默認值。


文檔說:


如果您想在您的應用程序中提供“記住我”功能,您可以將布爾值作為第二個參數傳遞給 attempt 方法,這將無限期地保持用戶身份驗證,或者直到他們手動注銷。當然,您的用戶表必須包含字符串 remember_token 列,該列將用于存儲“記住我”令牌。


if (Auth::attempt(['email' => $email, 'password' => $password], $remember)) { // 正在記住用戶... }


當您的用戶登錄時,只需發送“記住我”復選框的值并在您的嘗試方法中使用它。


if (Auth::attempt(['email' => $email, 'password' => $password], USE VALUE FROM  CHECKBOX HERE)) {

    // The user is being remembered...

}


查看完整回答
反對 回復 2023-05-12
  • 2 回答
  • 0 關注
  • 210 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號