Angular: делаем код читаемым для бэкендера. Бонус: подмена API заглушками и кэширование запросов
- возможность запускать фронт без бэкэнда, либо без отдельных эндпоинтов;
- описывать бэкендеру, какие нужны эндпоинты, формат запроса, ответа, итд.
Хочу поделиться своим способом организации кода, отвечающего за запросы к API, который отлично решает эти две задачи, а также позволяет кэшировать запросы.
Создаем в корне проекта файл конфигурации api.config.json:
{
"apiUrl": "https://api.example.com",
"useFakeApiByDefault": false,
"fakeEndPoints": ["Sample"]
}
Здесь прописываем базовый урл для API, если параметр useFakeApiByDefault = true, то наше приложение будет использовать только заглушки вместо всех запросов. Если false — то заглушки будут использоваться только для запросов из массива fakeEndPoints.
Чтобы можно было импортировать JSON в код, добавляем в секцию CompilerOptions файла tsconfig.json две строчки:
"resolveJsonModule": true,
"esModuleInterop": true,













