Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jsnxPmDtEV 70 of 72 menu
◀ ▶

Переменные окружения в NextJS

Адрес API неудобно зашивать в каждый файл: на тесте и в проде он разный, а иногда его меняют без правки компонентов. В NextJS такие значения хранят в файле .env.local в корне проекта.

Запрос из серверного компонента выполняется только на сервере. Поэтому достаточно обычной переменной без префикса NEXT_PUBLIC_ - она не попадет в код, который уходит в браузер.

Давайте зададим базовый адрес API в .env.local:

API_URL=https://jsonplaceholder.typicode.com

После изменения .env.local перезапустим сервер разработки, чтобы NextJS подхватил новые значения. В page.jsx прочитаем переменную через process.env и соберем полный адрес запроса:

export default async function Users() { let response = await fetch(`${process.env.API_URL}/users`); let users = await response.json(); return ( <ul> {users.map(user => ( <li key={user.id}>{user.name}</li> ))} </ul> ); }

Вынесите адрес API каталога фильмов в переменную API_URL и используйте ее в странице списка фильмов.

Добавьте вторую переменную с префиксом версии API, если ваш бэкенд отдает данные по пути /v2/..., и соберите итоговый URL из двух частей на сервере.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить