Я получаю проблему с пространством имен при попытке расширить фасад Response в Laraval 5. Я создал новое дерево папок в каталоге app под названием Extensions\Facades .  В этой папке у меня есть файл AjaxResponse.php который имеет следующее содержание: 
 <?php namespace App\Extensions\Facades; use Illuminate\Support\Facades\Response; class AjaxResponse extends Response{ public static function send($code,$body,$http_code=200){ parent::json( array( 'status'=>(string)$code, 'body' =>$body ) )->setStatusCode($http_code)->send(); exit(); } } 
  Я регистрирую это как поставщик услуг в config/app.php как я понимаю, я должен: 
 providers=[ //..normal stuff 'App\Extensions\Facades\AjaxResponse', ] 
И это бросает обычную ошибку пространства имен класса не найден:
 FatalErrorException in ProviderRepository.php line 150: Class 'App\Extensions\Facades\AjaxResponse' not found 
Может ли кто-нибудь пролить свет на то, почему класс не найден?
Перейдите в корневую папку проекта и введите тип терминала
 composer dump-autoload 
  Тогда все должно быть хорошо.  Когда вы создаете новую папку, композитор не знает об этом, поэтому он не может автоматически загружать файлы из нее, даже если они находятся в пространстве имен psr-4 . 
  EDIT Также вам нужно объявить псевдоним для вашего фасада в config/app.php в массиве aliases, а не в качестве провайдеров: 
  'AjaxResponse' => 'App\Extensions\Facades\AjaxResponse',