如标题所示,我想在控制器功能内使用中间件。我有资源控制器,它们内部的功能将具有不同的访问权限,因此我不能在web.php文件中使用中间件,我必须在每个函数中单独使用或应用中间件以限制访问,我的谷歌搜索还没有到目前为止,已经成功地找到了解决方案。请任何帮助,并在此先感谢。
附言:我认为这里不需要代码。
有3 种方法可以在控制器中使用中间件:
1) 保护所有功能:
public function __construct()
{
$this->middleware('auth');
}
Run Code Online (Sandbox Code Playgroud)
2) 仅保护部分功能:
public function __construct()
{
$this->middleware('auth')->only(['functionName1', 'functionName2']);
}
Run Code Online (Sandbox Code Playgroud)
3) 保护除某些功能外的所有功能:
public function __construct()
{
$this->middleware('auth')->except(['functionName1', 'functionName2']);
}
Run Code Online (Sandbox Code Playgroud)
您可以在此处找到有关此主题的所有文档:控制器
我希望这会有所帮助,问候!
中间件也可以仅应用于一个函数,只需在控制器构造函数中添加方法名称
public function __construct()
{
// Middleware only applied to these methods
$this->middleware('loggedIn', ['only' => [
'update' // Could add bunch of more methods too
]]);
}
Run Code Online (Sandbox Code Playgroud)
这是文档
| 归档时间: |
|
| 查看次数: |
2931 次 |
| 最近记录: |