Как включить свои учетные данные в getServerSideProps в Nextjs?

В асинхронной функции getServerSideProps мне нужно сделать выборку из серверной части, где я включаю свои учетные данные для создания экземпляра сеанса. У меня такой код:

export async function getServerSideProps({ query: { id } }) {
  // Instantiate
  await fetch(`${process.env.NEXT_PUBLIC_BASE_URL}/workflow/${id}`, {
    method: 'GET',
    credentials: 'include',
  })
    .then((response) => console.log('Instantiate...', response))
    .catch((error) => console.error('Instantiation error', error));
}

URL-адрес и все, похоже, работают, но консоль показывает ошибку 500, потому что учетные данные, похоже, не включены в выборку. При вставке точного вызова в консоль браузера /Postman ответ представляет собой код 200, поэтому серверная часть, похоже, работает правильно.

1 ответ

Я переместил выборку из getServerSideProps в componentDidMount, что устранило проблему. Единственное, что нужно иметь в виду, - это инициировать состояние с пустыми значениями, поскольку порядок вызовов следующий:

  1. constructor
  2. оказывать
  3. componentDidMount
  4. рендер (при обновлении состояния)
Другие вопросы по тегам