目前,当我向我的路线添加before
过滤器时,这样:
Route::get('/', function() {
return View::make('front');
})->before('auth.basic');
并访问我的测试应用(例如http://domain.com ),我在Chrome中看到以下内容:
我想要的是什么;当用户输入用户名和密码并点击"登录"按钮 - 运行自定义凭据验证例程以验证输入的详细信息。
通过自定义验证例程,我的意思是向外部API发出请求并检查输入的凭据是否有效,然后将true
/ false
返回到基本身份验证尝试。
这可能吗?这是否涉及编写自定义auth.basic
驱动程序?
答案 0 :(得分:1)
在laravel中使用auth.basic
身份验证时,它会对网站使用HTTP基本身份验证,这意味着它会在数据包的HTTP标头中询问并附加用户名和密码。说,浏览器准备好处理HTTP基本身份验证,并在处理数据包正文之前进行处理,这意味着您会看到显示的弹出窗口。
使用laravel的auth
代替。它会检查用户是否已在注册的Auth::check()
会话中登录,如果没有,则重定向到您的登录URL并在会话中存储预期的URL以在身份验证通过后重定向。请参阅Laravel Documentation。