在Laravel中发送重定向网址而不是重定向以进行ajax调用

时间:2017-09-04 09:50:01

标签: ajax laravel authentication redirect

我尝试使用ajax登录和注册更新laravel auth。我有一个登录表单,它将ajax POST请求发送到/ login路径。除了用户成功登录的情况外,一切正常 - 在这种情况下,laravel返回重定向到/ home页面。

是否可以防止此行为?我希望获得类似{message:"User signed in",redirect_to:"/home"}的内容,而不是实际的重定向。

现在我只是将sendLoginResponse方法从Illuminate/Foundation/Auth/AuthenticatesUsers复制到Auth/LoginController并重写如下:

protected function sendLoginResponse(Request $request)
{
    $request->session()->regenerate();

    $this->clearLoginAttempts($request);

    //return $this->authenticated($request, $this->guard()->user())
    //        ?: redirect()->intended($this->redirectPath());

    return $this->authenticated($request, $this->guard()->user())
            ?: ["message"=>"User successfully logged in"];
}

我不喜欢它。有更自然的方式吗?是否可以强制laravel返回redirect_to url而不是为每个ajax请求进行实际的重定向?

0 个答案:

没有答案
相关问题