我正在学习laravel,我刚刚创建了一个只有很少会话工作的中间件。但我收到了以下错误:
VerifyCsrfToken.php第136行中的FatalThrowableError:呼叫成员 函数setCookie()on null
这是中间件:
<?php
namespace App\Http\Middleware;
use Closure;
class Adminlogin {
public function handle($request, Closure $next) {
echo 1;
if (!$request->session()->has('userid')) {
return view('admin.auth.login');
}
return $next($request);
}
}
答案 0 :(得分:0)
您不应该从middleware
返回视图。相反,请尝试重定向到返回该视图的路由。
喜欢 -
return redirect()->route('login');
答案 1 :(得分:0)
在这种情况下,response()->view()
返回状态代码为200的指定视图,但您可以通过多种方式修改响应。
来自文档:如果您需要控制响应的状态和标题,但还需要返回视图作为响应的内容,则应使用view方法:https://laravel.com/docs/5.3/responses
return response()
->view('hello', $data, 200)
->header('Content-Type', $type);