激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - PHP教程 - Laravel 實現(xiàn)密碼重置功能

Laravel 實現(xiàn)密碼重置功能

2019-10-21 11:24學院君 PHP教程

這篇文章主要介紹了Laravel 實現(xiàn)密碼重置功能,非常不錯,具有參考借鑒價值,需要的朋友可以參考下

簡介

想要快速實現(xiàn)該功能?只需要在新安裝的 Laravel 應(yīng)用下運行 php artisan make:auth (如果你已經(jīng)執(zhí)行過此命令,可忽略),然后在瀏覽器中訪問 http://your-app.dev/register 或者其他分配給應(yīng)用的 URL,該命令會生成用戶登錄注冊所需要的所有東西,包括密碼重置!

大多數(shù) Web 應(yīng)用都提供了為用戶重置密碼的功能,Laravel 也不例外,Laravel 提供了用于發(fā)送密碼重置鏈接及實現(xiàn)密碼重置邏輯的便捷方法,而不需要你在每個應(yīng)用中自己重復(fù)實現(xiàn)。

注:在使用 Laravel 提供的密碼重置功能之前, User 模型必須使用了 Illuminate\Notifications\Notifiable trait。

數(shù)據(jù)庫相關(guān)

開始之前,先驗證 App\User 模型實現(xiàn)了 Illuminate\Contracts\Auth\CanResetPassword 契約。當然,Laravel 自帶的 App\User 模型已經(jīng)實現(xiàn)了該接口,并使用 Illuminate\Auth\Passwords\CanResetPassword trait 來包含實現(xiàn)該接口需要的方法。

生成重置令牌表遷移

接下來,用來存儲密碼重置令牌的表必須被創(chuàng)建,Laravel 已經(jīng)自帶了這張表的遷移,就存放在 database/migrations 目錄。所以,你所要做的僅僅是運行遷移:

php artisan migrate

這張表就是 password_resets :

Laravel 實現(xiàn)密碼重置功能

路由

Laravel 自帶了 Auth\ForgotPasswordController 和 Auth\ResetPasswordController 控制器(這兩個控制器類會通過 php artisan make:auth 命令自動生成),分別用于發(fā)送密碼重置鏈接郵件和重置用戶密碼功能。重置密碼所需的路由都已經(jīng)通過 make:auth 命令自動生成了:

php artisan make:auth

對應(yīng)路由定義在 Illuminate\Routing\Router 的 auth 方法中:

Laravel 實現(xiàn)密碼重置功能

視圖

和路由一樣,重置密碼所需的視圖文件也通過 make:auth 命令一并生成了,這些視圖文件位于

resources/views/auth/passwords 目錄下,你可以按照所需對生成的文件進行相應(yīng)修改。

重置密碼

定義好重置用戶密碼路由和視圖后,只需要在瀏覽器中通過 /password/reset 訪問這個入口路由。框架自帶的 ForgotPasswordController 已經(jīng)包含了發(fā)送密碼重置鏈接郵件的邏輯, ResetPasswordController 包含了重置用戶密碼的邏輯:

Laravel 實現(xiàn)密碼重置功能

輸入注冊郵箱,點擊發(fā)送密碼重置鏈接,就會發(fā)送密碼重置鏈接到該郵箱:

Laravel 實現(xiàn)密碼重置功能

打開郵箱會收到這樣一封重置密碼郵件:

Laravel 實現(xiàn)密碼重置功能

點擊重置密碼按鈕,即可進入重置密碼頁面:

Laravel 實現(xiàn)密碼重置功能

填寫表單提交之后即可重置密碼。

密碼被重置后,用戶將會自動登錄到應(yīng)用并重定向到 /home 。你可以通過定義 ResetPasswordController 的 redirectTo 屬性來自定義密碼重置成功后的跳轉(zhuǎn)鏈接:

protected $redirectTo = '/dashboard';

注:默認情況下,密碼重置令牌一小時內(nèi)有效,你可以通過修改 config/auth.php 文件中的選項 expire 來改變有效時間。

自定義

自定義認證 Guard

在配置文件 auth.php 中,可以配置多個“guards”,以便用于實現(xiàn)基于多用戶表的獨立認證,你可以通過重寫內(nèi)置的 ResetPasswordController 控制器上的 guard 方法來使用你所選擇的 guard,該方法將會返回一個 guard 實例:

use Illuminate\Support\Facades\Auth;
protected function guard()
{
 return Auth::guard('guard-name');
}

 

自定義密碼 broker

在配置文件 auth.php 中,可以配置多個密碼,以便用于重置多個用戶表的密碼 broker,同樣,可以通過重寫自帶的 ForgotPasswordController 和 ResetPasswordController 控制器中的 broker 方法來使用你所選擇的 broker:

use Illuminate\Support\Facades\Password;

/**
 * 獲取密碼重置期間所使用的broker.
 *
 * @return PasswordBroker
 * @translator laravelacademy.org
 */
protected function broker()
{
  return Password::broker('name');
}

自定義密碼重置郵件

你可以很方便地編輯發(fā)送密碼重置鏈接給用戶的通知類實現(xiàn)自定義密碼重置郵件,要實現(xiàn)這一功能,需要重寫 User 模型上的 sendPasswordResetNotification 方法,在這個方法中,可以使用任何你所喜歡的通知類發(fā)送通知,該方法接收的第一個參數(shù)是密碼重置 $token :

/**
 * 發(fā)送密碼重置通知.
 *
 * @param string $token
 * @return void
 */
public function sendPasswordResetNotification($token)
{
  $this->notify(new ResetPasswordNotification($token));
}

總結(jié)

以上所述是小編給大家介紹的Laravel 實現(xiàn)密碼重置功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 毛片免费看网站 | 欧美成人精品欧美一级乱黄 | 秋霞a级毛片在线看 | 成人毛片一区 | 久久久久久久.comav | 黄色高清免费 | 99视频观看| 日日夜av| 日本在线播放一区二区三区 | 亚洲一区 国产精品 | 久久国产精品久久久久久电车 | 美女视频黄a视频免费全过程 | 免费亚洲视频在线观看 | 国产午夜精品一区二区三区四区 | 在线视频 欧美日韩 | 91看片在线观看视频 | 久久国产亚洲视频 | 国产一级免费av | 日韩在线视频免费观看 | a视频在线看 | 中国黄色一级生活片 | 欧洲成人免费视频 | 欧美精品在线视频观看 | 91青青 | 日韩视频一区二区在线观看 | 亚洲人成在线播放网站 | 日韩.www| 精品国产精品久久 | 精品国产乱码久久久久久丨区2区 | 成人免费毛片在线观看 | 国产女厕一区二区三区在线视 | 国产精品久久久久久久久久尿 | 毛毛片在线看 | 狠狠干天天操 | 92看片淫黄大片一级 | 国产18成人免费视频 | 国产精品成人久久久久a级 男女无遮挡羞羞视频 | 国产91一区 | 一区二区三区日韩视频在线观看 | 成人毛片100部 | 黄网站在线播放视频免费观看 |