Day 45/100 #100DaysOfCode
Thông thường trong Laravel các bạn thường hay cài đặt Ckfinder để tích hợp vào Ckeditor. Các của các bạn làm là chạy câu lệnh, tạo middleware , sau custom middleware đó để xử lý việc Auth::check()
Nhưng hôm này cách mình làm nó lại đơn giản hơn nhiều, chỉ cần download ckfinder về và tích hợp vào ckeditor như thông thường thôi nhé. Chỉ chỉnh sửa lại file ckfinder/config.php thôi
$config['authentication'] = function () { require $_SERVER['DOCUMENT_ROOT'] . '/../vendor/autoload.php'; $app = require_once $_SERVER['DOCUMENT_ROOT']. '/../bootstrap/app.php'; $response = $app->make('Illuminate\Contracts\Http\Kernel') ->pushMiddleware(\App\Http\Middleware\EncryptCookies::class) ->pushMiddleware(\Illuminate\Session\Middleware\StartSession::class) ->handle(Illuminate\Http\Request::capture()); if(Auth::user()->id==2){return true;} return false; };
Trong đoạn code bên trên bạn thấy là mình kiểm tra user có phải là id=2 không nếu nó đúng thì return true, ngược lại thì return false
Tuỳ vào bạn muốn check quyền như thế nào mà bạn có thể kiểm tra role của nó nhé. Chia sẻ thêm với mọi người là nếu việc thiết lập báo lỗi Invalid Request khi bạn brower image, thì để muốn biết ta sai ở chổ nào, ta chỉ cần bặt tính năng show lỗi trong ckfinder lên nhé . https://ckeditor.com/docs/ckfinder/ckfinder3-php/debugging.html
//Debugging mode can be enabled in config.php with: $config['debug'] = true; // Development in config.php with: error_reporting(E_ALL); ini_set('display_errors', 1);
Nó sẽ hiện lỗi như thế nào thì ta sẽ tìm cách xử lý nó, thường lỗi về đường dẫn call không đúng tới vendor/autoload.