Skip to content

Конфигурация

asvae edited this page Aug 16, 2016 · 5 revisions

####enabled Данная опция позволяет включить или выключить работу пакета. По умолчанию, она опирается на debug-режим приложения 'enabled' => env('APP_DEBUG', false), но Вы можете установить значение true или false мануально.

####route Базовый путь маршрутов api-tester'а, относительно него будут рассчитаны пути как основного, так и всех прочих маршрутов api-tester'а. По умолчанию, установлен маршрут 'route' => 'api-tester', для краткости, вы можете установить просто tester, или любой другой путь.

####middleware Здесь Вы можете перечислить middleware, в которые хотели бы обернуть все маршруты api-tester'а. Это может быть, например, auth. По умолчанию, добавлены стандартные middleware Laravel.

####include\exclude Эти две опции позволяют очень гибко настроить фильтрацию маршрутов для отображения. С помощью include фильтруются маршруты которые будут отображены. А exclude, позволяет исключить маршруты из выборки. Базовый синтаксис, позволяет просто подобрать два регулярных выражения, для фильтрации маршрутов по пути. Например, следующие варианты настроек включат все маршруты, пути которых начинаются с api, и исключат все варианты, которые содержат в пути assets:

// Syntax L1
'include' => '^api',
'exclude' => 'assets'

Если вы используете более сложный синтаксис регулярных выражений, то вам придется по вкусу удобное разделение группировки первого уровня выражений. Следующий синтаксис, включит для отображения все маршруты содержащие в пути v1 или v2, и исключит, те маршруты, которые, содержат api или debug

// Syntax L2
'include' => ['v1', 'v2'],
'exclude' => ['api', 'debug']

Кроме того, маршруты можно фильтровать не только по пути, но и по другим параметрам. Например, метод, имя, или домен. Следующее выражение, пропустит все маршруты по методу get со всех доменов + маршруты по методу post c домена blablabla.com:

// Syntax L3
'include' => [
     [
         'method' => 'get'
     ], 
     [
         'domain'=> 'blabla.com'
         'method' => 'post'
     ]
]

Аналогично это работает и для exclude.

####route_repositories В этой настройке перечислены классы репозиториев предоставляющих маршруты для вывода. По умолчанию, это репозиторий для стандартного роутера Laravel. В пакете имеется, также, и поддержка Dingo Api. Кроме того, если вы используете любой другой нестандартный маршрутизатор, то вам нужно создать имплементацию для Asvae\ApiTester\Contracts\RouteRepositoryInterface и добавить её в этот список.

####storage_driver Здесь указан, стандартный для этой библиотеки драйвер хранения и выборки заготовленных запросов.Указанный по умолчанию драйвер, получает и сохраняет запросы одной "пачкой". Они использует для хранения данных реализацию Asvae\ApiTester\Contracts\StorageInterface. На данный момент, доступны драйвера file и firebase Для добавлений или обновлений записей "по одной", придется написать собственную реализацию. Или дождаться "лучших времён".

####storage_drivers В этом массиве перечислены все доступные драйверы хранения, и их настройки.