Локальный доступ к секретам в Next.js / NOW для маршрутов SSR и API - PullRequest
0 голосов
/ 09 февраля 2020

Попытка использовать секреты локально на Next.js / NOW -хост-сайте.

Это секреты, которые я хочу сделать доступными только для SSR страниц и API функций (не отображается браузером) компоненты).

В отличие от документации Zeit , секреты работают, только если они хранятся в .env.build. Если они хранятся в .env, они отображаются как undefined.

Другими словами, это работает:

.env.build

SECRET_KEY="2039usdljkhfklsjdfjaops9dfi09"

now.json

{
  "build": {
    "env": {
      "SECRET_KEY": "@secret-key"
    }
  }
}

Это не:

.env

SECRET_KEY="2039usdljkhfklsjdfjaops9dfi09"

now.json

{
  "env": {
    "SECRET_KEY": "@secret-key"
  }
}

Я что-то упустил?

Я боюсь, что секреты, введенные в build, будут «встроены» в сайт, то есть общедоступны. Я неправильно понимаю слово «строить»?

1 Ответ

0 голосов
/ 10 февраля 2020

Моя проблема была исправлена ​​путем входа в zeit.co, перехода к настройкам проекта моего приложения и выбора Other для моего Framework Preset. Ранее для него было установлено значение Next.

. После внесения этого изменения мои локальные переменные среды стали отображаться в process.env, когда я запустил now dev.

Это кажется странным now 17.x. Понижение до now 16.7.3 также исправило проблему. Надеюсь, это скоро исправят!

...