我是laravel的新手,剛開始構建我的第一個laravel應用程序(v.5.2)。我來自codeigniter。在CI中,我曾經創建一個預控制器鉤子來檢查登錄狀態並在任何控制器加載之前設置語言。應用範圍內的東西。我可以在Laravel 5中創建預控制器鉤子
我找不到laravel文檔中的前控制器掛鉤上的任何內容。有一種叫做「中間件」的東西可以完成這項工作。這個中間件在什麼時候啓動? 我在正確的軌道上嗎?或者有沒有更好的方式在laravel做這些工作。
我是laravel的新手,剛開始構建我的第一個laravel應用程序(v.5.2)。我來自codeigniter。在CI中,我曾經創建一個預控制器鉤子來檢查登錄狀態並在任何控制器加載之前設置語言。應用範圍內的東西。我可以在Laravel 5中創建預控制器鉤子
我找不到laravel文檔中的前控制器掛鉤上的任何內容。有一種叫做「中間件」的東西可以完成這項工作。這個中間件在什麼時候啓動? 我在正確的軌道上嗎?或者有沒有更好的方式在laravel做這些工作。
是的,中間件是最好的選擇。我正在使用身份驗證中間件在我的應用程序中實現這種功能。
像下面一樣。
public function __construct()
{
$this->middleware('auth' , ['except' => ['show']]);
parent::__construct($this);
}
在這裏,我想給的權限,只顯示行動沒有登錄。
您還可以使用表單請求來檢查每個操作的權限/身份驗證。
是的,你可以用中間件來做到這一點。 中間件將在執行控制器的方法之前執行。
雖然我會建議你做一個基礎控制器,你可以創建一個方法來做這些事情,並從基類的構造函數中調用該方法。
編輯
所以我剛纔讀您要檢查,如果用戶登錄。爲此,你必須auth
中間件。
你可以有App\Http\Controllers\Controller
其實所有其他控制器的外觀擴展了該基地控制器。
問題: 1.如果路由在這種情況下不使用控制器,則不起作用。
這取決於您想要執行的操作。在系統不允許匿名用戶訪問受限頁面的情況下,中間件主要涉及圖片。 –