@Alk90
php, mysql, jquery, css, html, api

Как отделить версии API на сервере?

Всем привет! Пишу API на php. Довольно объемное, но не совсем понимаю как сделать, несколько его версий...
Например запрос может поступать с параметром v1.0.0, но вдруг мне понадобилось создать версию v1.0.1, для того, чтобы, например, при отдаче постов добавить еще один параметр...
было:
{
"id": 1,
"title": "заголовок"
}

стало:
{
"id": 1,
"title": "заголовок",
"descr": "текст"
}


На ум приходит взять папку, в которой лежит API с версией 1.0.0, и скопировать в другую, переименовав в 1.0.1 и уже в новой папке работать с новой версией...
Но получается глупо дублировать весь код, ради одного параметра...
На ум снова приходит вариант с использованием условия IF. Вроде: если обращение к версии 1.0.0, то отдаем первый вариант, если 1.0.1 - второй.
Но опять же... через какое-то время этих IF станет столько много, что я просто не смогу их контролировать....

Подскажите, как отделить эти версии на сервере с меньшими проблемами...
  • Вопрос задан
  • 60 просмотров
Пригласить эксперта
Ответы на вопрос 1
yellow79
@yellow79
Senior Software Engineer
через какое-то время этих IF станет столько много

Зачем много? Мне кажется достаточно одного. Прям на входе проверяете наличие контроллера для версии, указанной в запросе, если её нет понижаете версию и сново проверяете наличие контроллера, и так далее.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы