我可能不理解laravel身份验证架构,但在我看来,很难理解Auth::check()
函数实际上是如何工作的,因为它没有得到任何参数作为输入。确切地说,我的问题是,函数如何知道用户正在检查什么?laravel如何检查用户是否已通过身份验证?
0
A
回答
1
其实,Auth::check()
有以下代码
public function check()
{
return ! is_null($this->user());
}
如有用户登录或空;如果没有登录Auth::user()
返回用户实例功能,因此,它不检查谁在,但它登录只检查是否有用户登录。
每当该应用程序在用户登录时,Auth::login()
功能做到这一点,首先
$this->updateSession($id = $user->getAuthIdentifier());
此代码是不言自明的,它只是更新session
,这里$user->getAuthIdentifier()
返回登录的主键用户和Auth::updateSession()
功能简单地运行此
$this->session->put($this->getName(), $id);
这里,$this->getName()
返回正被用作一个md5
串3210和$id
是登录用户标识,因此它只是将用户标识放入与密钥关联的会话中(唯一的md5
字符串)。
所以,实际上Auth::check()
触发Auth::user()
功能和作用主要是检查这个md5
密钥对会话,如果这key
在会议上获得,则包含一个整数值。这是用户ID。
的关键看起来是这样的login_82e5d2c56bdd0811318f0cf078b78bfc
,它可能包含用户ID的整数值,如果任何用户登录。
这是会话数据的样本,当用户在
array (size=4)
'_token' => string 'CmHN90G2sVWvejx9r6MMo8AU2dhhV8z9BJQPzATt' (length=40)
'flash' =>
array (size=2)
'old' => array (size=0) empty
'new' => array (size=0) empty
'login_82e5d2c56bdd0811318f0cf078b78bfc' => int 1 <-- current user id
'_sf2_meta' =>
array (size=3)
'u' => int 1391189690
'c' => int 1391187210
'l' => string '0' (length=1)
登录
相关问题
- 1. 检查Facebook用户是否已通过身份验证
- 2. ServiceStack Jwt身份验证检查是否已通过验证
- 3. 心跳来检查用户是否通过身份验证?
- 4. 如何使用play.api.mvc.Security类来检查用户是否通过身份验证?
- 5. 通过身份验证Laravel
- 6. iOS:检测WIFI是否已通过身份验证?
- 7. 如何为已通过身份验证的用户和未通过身份验证的用户创建路由
- 8. 检查URL是通过身份验证的用户
- 9. 如何检查帐户是否已通过验证?
- 10. CakePHP - 使用jQuery检查用户是否通过身份验证登录
- 11. 如何缓存当前已通过身份验证的用户? (Laravel 5)
- 12. 如何检查用户是否通过Laravel上的cookie会话进行身份验证?
- 13. MVC C#检查用户是否通过ajax请求进行身份验证
- 14. 检查用户是否使用Cognito进行了身份验证
- 15. 如何检查用户是否需要使用Firebase身份验证重新进行身份验证
- 16. 如何检查,用户是否已经对应用程序进行了身份验证,或者必须通过Linkedin API进行身份验证?
- 17. Django模板检查用户已通过身份验证并且存在
- 18. 如何在服务器上检查客户端是否已通过身份验证?
- 19. 检查用户是否在OpenFire中进行了身份验证
- 20. Symfony2 - 检查用户是否具有身份验证角色
- 21. 通过ajax的Laravel身份验证
- 22. 检查用户身份验证
- 23. 用户通过身份验证后是否有事件触发?
- 24. ServiceStack验证属性不检查用户是否通过验证
- 25. 如何通过Laravel验证检查上传的PDF是否已加密
- 26. Android:我如何检查WiFi是否已通过验证
- 27. 用户身份验证时,验证通过的JavaScript功能检查
- 28. 如果用户通过声明进行身份验证,如何检查sharepoint?
- 29. Laravel 5通过外部API对用户进行身份验证
- 30. Sentry通过Laravel的用户名进行身份验证
此方法并不是要检查是否记录了特定用户名,而是要检查用户尝试连接是否已记录(或不记录)。因此,即使加载页面的用户使用其他人的凭证登录,该方法也会返回true。 – bastienbot
看这页.'http:// net.tutsplus.com/tutorials/php/authentication-with-laravel-4 /' –