(Почему) Apigility работает только в режиме разработки?

В документации Apigility описано, как "установить" Apigility. Есть несколько способов сделать это, но последний шаг всегда должен быть:

cd path/to/install
php public/index.php development enable # put the skeleton in development mode

Без этого скелет вызывает в браузере и с сообщением об ошибке:

Произошла ошибка

Произошла ошибка во время выполнения; Пожалуйста, попробуйте позже.

  • Apigility работает только без режима разработки? Если да - почему?
  • Какие еще есть режимы? Где они перечислены и описаны?

1 ответ

Решение

Насколько я знаю, есть два основных режима live и dev.

Он в основном контролирует, будет ли загружен application.config.php или dev.application.config.php (конфигурация dev будет объединена с обычной при включенном режиме разработки)

Они оба должны работать просто отлично. Когда вы находитесь в режиме разработки, вы можете включить модули в конфигурации, как

// Development time modules
'modules' => array(
    'ZFTool',
    'ZF\Apigility\Admin',
    'ZF\Apigility\Welcome',
    'ZendDeveloperTools',
),

Так что на производственном сервере вы не можете получить доступ к интерфейсу apigility, поскольку модуль вообще не загружен, что приятно и безопасно, поскольку никто не хочет, чтобы пользователи вмешивались в работу api haha.

Но вы должны быть в состоянии сделать вызовы API в обоих режимах. Я думаю, у вас есть проблема в вашей конфигурации где-то, если у вас возникают проблемы с вызовами API в режиме разработки, хотя неясно, имеете ли вы это в виду или не можете получить доступ к интерфейсу администратора

Есть довольно хорошая документация о режиме разработки:

https://apigility.org/documentation/modules/zf-development-mode

Другие вопросы по тегам