我正在使用Laravel5。我在/ public / plugins / ckfinder目录中有引用ckfinder的文件夹。
我需要使用config.php中的CheckAuthentication函数,但是会话值和Auth Class为空。
我努力了
function CheckAuthentication(){
return Auth::check();
}
要么
//Ckfinder Config.php
function CheckAuthentication(){
if($_SESSION['ckfinder_enabled'] == 'enabled') {
return true;
} else {
return false;
}
}
//App\Http\Middleware\Authenticate.php
public function handle($request, Closure $next)
{
if ($this->auth->guest()){
if ($request->ajax()){
return response('Unauthorized.', 401);
}else{
return redirect()->guest('auth/login');
}
}
if($this->auth->check()) {
$_SESSION['ckfinder_enabled'] = 'enabled';
return $next($request);
}
}
最佳答案
我也有同样的问题。您的代码对于laravel 4.2有用,但是对于laravel 5,您需要在ckfinder文件夹的config.php中执行此操作:
require _DIR_.'/../../../bootstrap/autoload.php';
$app = require_once _DIR_.'/../../../bootstrap/app.php';
$app->make('Illuminate\Contracts\Http\Kernel')
->handle(Illuminate\Http\Request::capture());
然后,您就可以使用以下代码了:
function CheckAuthentication(){
return Auth::check();
}
这应该工作。
关于php - laravel 5的CKFinder身份验证问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30665618/