{%- include 'blocks/head.html.twig' with { title: pageTitle, cssFolderPath: cssFolderPath } %} {# FIXME. Discuss: https://github.com/TouchInstinct/api-generator/issues/41 #} {%- set outOfDateError = first(errorType.values) -%}
{{ pageTitle }}
{%- include 'blocks/main-menu.html.twig' with { mainMenu: mainMenu } %}
{%- include 'blocks/header.html.twig' with { imagesFolderPath: imagesFolderPath, methodsPath: methodsPath, relativeToRootPath: relativeToRootPath } %}

Описание

Необходимо иметь возможность поддержки нескольких версий API (для одновременной работы нескольких версий приложения). Также необходимо предусмотреть принудительное обновление какой-либо из версий.

Версии API будут размещаться на url-адресах вида <base_url>/v<version_number>/, где <version_number> - версия API.

При вызове любого метода в случае, если вызываемая версия API требует обновления приложения, сервер должен вернуть ошибку:
"{{ outOfDateError.description }} Код {{ outOfDateError.value }}."

При этом приложение должно показать пользователю диалог с предложением установить новую версию из маркета, а остальные функции должны стать недоступными.

Пример

Первая версия API будет располагаться по адресу: <base_url>/v1/.
В тот момент, когда эта версия API перестанет поддерживаться, на все запросы этой версии API сервер должен возвращать следующий ответ:

{ "result": null "error_code": {{ outOfDateError.value }}, "error_message": "{{ outOfDateError.description }}" }
{%- include 'blocks/scripts.html.twig' with { jsFolderPath: jsFolderPath } %}