php – 注销后的Laravel 5重定向 – 如何重定向?

我希望在他成功注销后重定向回用户所在的位置,因为即使已注销,我也可以访问这些方法.

除了@show,我保护我的PhotosController中的每个方法

public function __construct()
{
    $this->middleware('auth', ['except' => 'show']);
}

要在注销后设置重定向,我在我的AuthController中设置属性,如下所示:

protected $redirectAfterLogout = '/customLogoutPage';

但是我希望将用户重定向到他曾经去过的地方,因为即使没有被锁定,他也可以看到View.

我试着朝这个方向努力:

protected $redirectAfterLogout = redirect()->back();

但我的浏览器说:“意外'(‘,期待’,’或’;’

在退出之前,如何使用重定向回到用户所在的视图.

最佳答案 内置的logout-method只接受一个字符串,你正在向它传递一个函数.如果您想要这种行为,您必须在AuthController中实现自己的logout方法.

幸运的是,这很简单:

public function getLogout()
{
    Auth::logout();

    return redirect()->back();
}

而已.

作为参考,这是Laravels AuthenticatesUser特性使用的原始函数:

/**
 * Log the user out of the application.
 *
 * @return \Illuminate\Http\Response
 */
public function getLogout()
{
    Auth::logout();

    return redirect(property_exists($this, 'redirectAfterLogout') ? $this->redirectAfterLogout : '/');
}
点赞