давайте предположим, что у нас есть 2 пользователя с этими именами:
тогда у вас будет 2 папки:
storage/app/john
storage/app/sarah
Теперь, чтобы получить доступ к файлам Джона, вы должны иметь в вашем маршруте / web.php следующее:
Route::get('/file/{username}/{name}','FilesController@getFile');
затем в FilesController
добавить эту функцию:
public function getFile($username,$name){
if(!Auth::user()){
//user is not logged in
return response(null,403)
}
$auth_user = Auth::user()->username;
if($username === $auth_user){
//continue with the request
$exists = Storage::disk('local')->exists($username .'/'. $name);
if(!$exists){
// file not found
return response(null,404);
}
$file = Storage::get($username .'/'. $name);
return response($file);
}else{
// the user doesn't have access
}
}
я не проверял это, поэтому если у вас возникли проблемы, дайте мне знать
Подробнее о хранении в багажнике