Laravel 5使路由知道我是一个发送授权请求


Laravel 5 make the routes know that I am an sending Authorized request

这个问题困扰了我好几天了。我正在使用时髦的库从控制器内的函数请求将页面的一部分转换为pdf。我的计划是:

使用这个$snappy->getOutput('http://myapp.com/campaign/21859866de/');来截取页面的截图并将其转换为pdf,但是每当我使用它时,它都会截取登录页面的截图。-即使它是不好的应用程序,我试图排除路由从CSRF验证,但仍然登录页面显示在生成的pdf:(

非常感谢您的建议。提前感谢!

在app/Http/Middleware目录下有一个Authenticate.php文件

可以指定不需要登录的路由

  public function handle($request, Closure $next, $guard = null)
    {
    if (Auth::guard($guard)->guest()) {

            //check for specific route to load without needing to log in
            $routeCheck = $request->route()->getActionName();
            if($routeCheck == 'App'Http'Controllers'SomeController@someMethodInController') {
                return $next($request);
            }
            return response('Unauthorized.', 401);
    }
    return $next($request);
}
那么在你的路由中你可以指定一个routes
  Route::get('/campaign/{id}/{flag}', 'SomeController@someMethodInController');

这将检查该路由并允许访问而不需要用户登录。{flag}是您可以传递并查找

的标志。

如果你不需要加载控制器,你只想加载一个视图,那么你可以在你的routes.php文件中添加下面的代码

Route::get('/campaign/{id}/{flag}', function() {
    return view ('whateverview');
});

因为你这样做没有击中控制器所以没有发生登录检查