【发布时间】:2023-03-24 18:59:01
【问题描述】:
我正在使用 HMVC 包来使用我自己的 API。但是,它还包括一些需要身份验证的 POST 请求。显然,我不能只在请求中输入我的密码,也不能发现 ENV 变量是一个优雅的解决方案。
有没有办法在基本身份验证过滤器内部检查请求是否是内部发出的?
过滤器应用于控制器,而不是路由
【问题讨论】:
标签: php authentication laravel
我正在使用 HMVC 包来使用我自己的 API。但是,它还包括一些需要身份验证的 POST 请求。显然,我不能只在请求中输入我的密码,也不能发现 ENV 变量是一个优雅的解决方案。
有没有办法在基本身份验证过滤器内部检查请求是否是内部发出的?
过滤器应用于控制器,而不是路由
【问题讨论】:
标签: php authentication laravel
第一个选项
您可以在过滤器上添加异常测试,以便仅在请求不是来自本地主机时应用过滤器规则。
第二个选项
您将在路由上应用过滤器,这样您就不会在本地访问控制器时遇到问题。
Route::get('profile', array('before' => 'auth', function()
{
// Only authenticated users may enter...
}));
来源:http://laravel.com/docs/4.2/security#protecting-routes
第三个选项
这似乎也不是一个优雅的解决方案,但一种解决方法是查看请求是否来自本地主机,您可以手动验证用户身份。
$user = User::find(1);
Auth::login($user);
【讨论】: