javascript - Laravel ajax 身份验证检查工作直到 JS 重定向

标签 javascript php jquery ajax laravel

我正在尝试将旧的身份验证形式切换为 Laravel 的身份验证。我正在使用 ajax 调用对用户进行身份验证,并检查他们的密码是否需要重置。

我验证了旧方法,使用 Laravel 的 Auth::login() 手动登录用户。ajax 调用成功后,我重定向到重置密码路由的 url。

现在,当我到达重置通行证路线时,我会检查用户是否已通过身份验证。当我检查重置密码功能时,用户不再经过身份验证。 Laravel 路由过滤也返回相同的结果。

如有任何建议,我们将不胜感激,谢谢!

Javascript:

function login(){
    $form = $('#login-form')

    $.ajax({
        url: "/laravel/public/index.php/login",
        type: 'POST',
        data: $form.serialize(),
        success: function(data){
            if(data.action == 'reset')
                window.location = '/laravel/public/index.php/reset';
        },
        error: function(){

        }
    });
}

登录功能-Laravel

    $login = Input::get('login');
    $pass = Input::get('password');

    $user = User::where('login', $login)
        ->select('password_reset', 'crypted_password', 'salt', 'password', 'id')
        ->first();

    // check for reset old password
    if($user->password_reset == 1 && Hash::needsRehash($user->password)){
        $reset = LoginController::oldValidation($pass, $user->salt, $user->crypted_password);

        if($reset == 1){
            Auth::login($user);
            error_log('Login Auth:' . Auth::check()); // will return true
            return array('action'=>'reset');
        }
    }

重置功能 - Laravel

public static function reset(){
    error_log('Check: ' . Auth::check()); // this is now false
}

最佳答案

尝试使用正确的方式返回响应,否则将无法正确设置用户验证的 session 值。

这是返回 JSON 值的方式:

return Response::json(array('action'=>'reset')); 

关于javascript - Laravel ajax 身份验证检查工作直到 JS 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23666472/

相关文章:

javascript - 检测破折号中的页面变化

javascript - 使用类验证器中的 @MinDate 会导致 TypeError : Cannot read property 'getTime' of undefined?

PHP 兄弟类继承

javascript - 如何检查 ng-show={{}} 表达式与值数组列表是否匹配?

php - 是否有用于 PHP 的 iCalendar 文件的现有解析器?

php - 找不到盒子 'laravel/homestead'

javascript - 刷新html页面时如何保持当前选项卡?

jquery - 使用 jquery 从 Kendo 下拉列表中删除特定下拉选项

类似于 SQL “like” 的 JavaScript 运算符

javascript - 计算结果向量弹跳圆/球