如何在 Laravel 5.2 中没有数据库进行身份验证?
How to authenticate without database in Laravel 5.2?
我已尝试使用以下代码在 Laravel 5.2 中进行身份验证。但我不知道如何使登录为真。我在 if 语句之后尝试 Auth::login(true)
但它无法正常工作。我找到了一些关于这个主题的文章,但我找不到详细的例子。
public static function Login($email,$password)
{
$fp = fsockopen ( "www.mydomain.com" , 110 );
if (!$fp) {
return "Connection Error";
}
$trash = fgets ( $fp, 128 );
fwrite ( $fp, "USER ".$email."\r\n" );
$trash = fgets ( $fp, 128 );
fwrite ( $fp, "PASS ".$password."\r\n" );
$result = fgets ( $fp, 128 );
if(substr ( $result, 0, 3 ) == '+OK')
return true; //user will be logged in and then redirect
else
return false;
}
如果可以的话,请您在这里添加一段代码,说明如何使身份验证为真?
P.S。我可以在登录后通过简单的查询使用电子邮件检索用户信息。
如果你知道用户是谁(即:已经有一个 $user 实例),你可以简单地登录而不使用任何守卫,如 documentation
所示
Auth::login($user);
我会将 User 实例而不是 $email/$password 传递给您的函数
$user = User::whereEmail($email)->first();
$class->login($user);
然后在你的 class
public static function Login(User $user)
{
// ...
if(substr ( $result, 0, 3 ) == '+OK')
Auth::login($user);
return true; //user will be logged in and then redirect
else
return false;
}
我已尝试使用以下代码在 Laravel 5.2 中进行身份验证。但我不知道如何使登录为真。我在 if 语句之后尝试 Auth::login(true)
但它无法正常工作。我找到了一些关于这个主题的文章,但我找不到详细的例子。
public static function Login($email,$password)
{
$fp = fsockopen ( "www.mydomain.com" , 110 );
if (!$fp) {
return "Connection Error";
}
$trash = fgets ( $fp, 128 );
fwrite ( $fp, "USER ".$email."\r\n" );
$trash = fgets ( $fp, 128 );
fwrite ( $fp, "PASS ".$password."\r\n" );
$result = fgets ( $fp, 128 );
if(substr ( $result, 0, 3 ) == '+OK')
return true; //user will be logged in and then redirect
else
return false;
}
如果可以的话,请您在这里添加一段代码,说明如何使身份验证为真?
P.S。我可以在登录后通过简单的查询使用电子邮件检索用户信息。
如果你知道用户是谁(即:已经有一个 $user 实例),你可以简单地登录而不使用任何守卫,如 documentation
所示Auth::login($user);
我会将 User 实例而不是 $email/$password 传递给您的函数
$user = User::whereEmail($email)->first();
$class->login($user);
然后在你的 class
public static function Login(User $user)
{
// ...
if(substr ( $result, 0, 3 ) == '+OK')
Auth::login($user);
return true; //user will be logged in and then redirect
else
return false;
}