php - Laravel 会话处理无需登录即可重定向
问题描述
嗨,我有一个登录表单,只有当用户登录时,它才应该打开页面,即如果用户直接输入 url,它应该重定向回登录页面。在 laravel 我读到有 Auth::check() 但我使用 auth.php 进行不同的登录,并且工作正常。但是我创建了新的登录页面,因为我无法使用 auth.php 我如何继续查看是否设置了会话,如果没有重定向到 laravel 中的登录页面;
<?php
class TelecallController extends BaseController {
public function __construct() {
$this->beforeFilter(function () {
if(!Session::has('telecall_id'))
{
return Redirect::to('/8032/telecalls/login');
}
}, array('except' => array('')));
}
}
但我收到以下错误
ERR_TOO_MANY_REDIRECTS
解决方案
你得到的错误很简单,看:
if(!Session::has('telecall_id'))
{
return Redirect::to('/8032/telecalls/login');
}
其结果!Session::has('telecall_id')
在开始时为 TRUE。当您访问时,return Redirect::to('/8032/telecalls/login');
您的会话值没有更改,telecall_id
这就是您一次又一次被重定向的原因。
重定向后,您需要确保结果 if(!Session::has('telecall_id'))
为 FALSE。所以 - 你需要正确设置会话值。
在这里,您将了解如何正确准备会话:https ://laravel.com/docs/5.6/session
推荐阅读
- javascript - 使用 paypal-rest-sdk 时出错。请帮助我
- android - 在不使用 startActivityForResult 从图库中选择图像时,如何获得真实路径?
- javascript - 带有变量的 UseQuery:{} 来自 useEffect 的参数
- java - 如何退出 switch 表达式中的方法?
- r - 对多个模型应用相同分析时的优雅编码格式
- python - 追加到python中的空列表
- angular - ng 测试:找到合成侦听器@transform.start。请在您的应用程序中包含“BrowserAnimationsModule”或“NoopAnimationsModule”
- visual-studio-code - 将光标移动到vscode中选择的另一侧?
- javascript - 简单的计数器不适用于 React 上下文
- vb.net - vb.net 中的 XML 结构和写入 XML:输出始终为空白