我有这样的middelware:
public function handle($request, Closure $next)
{
if(Request::segment(1)=='test'){
return $next($request);
}else{
Auth::logout();
Session::flush();
return view ('login')->with(['flag'=>1]);
}
}
和return view ('dashboard');
剂量不显示登录页面和
告诉我这个错误
VerifyCsrfToken.php第101行中的FatalErrorException:
在非对象上调用成员函数setCookie()
Phpstorme高亮显示视图和工具提示有此消息
未定义的函数查看更多...(ctrl + f1)
当我使用此命令时
return redirect()->guest('auth/login');
它重定向到登录页面,但我想要通过标志登录页面
答案 0 :(得分:1)
尝试将{!! csrf_field() !!}
放在您的表单中,如下所示:
...
{!! csrf_field() !!}
<div class="form-group">
<label>Name</label>
...
答案 1 :(得分:1)
如果要将标志传递给登录页面。你可以尝试这个:
return redirect()->guest('auth/login')->with('flag','1');
答案 2 :(得分:1)
我一直在寻找类似问题的解决方案。
当用户尝试从中间件访问某个经过身份验证的网址(例如http://localhost/my-site/admin/user/profile)时,我的目的是返回登录页面视图(但不会重定向到登录页面)。
以下代码段解决了我的问题
将其添加到您的命名空间
use Illuminate\Http\Response;
并在Middleware的句柄方法中使用以下return语句
return new Response(view('user/login'));