Получить параметр пути на Next.js API

#javascript #reactjs #next.js

#javascript #reactjs #next.js

Вопрос:

У меня есть следующий файл

pages/api/[slug]/[uid].ts

И я хочу получить slug и uid в теле моего обработчика, как я могу это сделать?

Ответ №1:

Вы можете использовать useRouter() пользовательский хук, предоставляемый next для доступа к параметрам запроса в NextJS. Он вернет объект, который будет содержать подробную информацию о загруженном URL-адресе, включая параметры запроса. Параметры будут сохранены в query key в возвращаемом объекте. Сам query по себе имеет объект в качестве значения, где key — это имя параметра (здесь slug и uid ), а его динамические значения в качестве значений.

Затем мы можем использовать деструктурирование объекта для детализации требуемых параметров.

   const router = useRouter();
  const { slug, uid } = router.query;
 

Для доступа к одному параметру мы можем сделать следующее,

   const router = useRouter();
  const slugValue = router.query.slug;
  const uidValue = router.query.uid;
 

Ответ №2:

Вы можете получить к нему доступ только с req.query помощью консоли.войдите в систему и ознакомьтесь с документами для получения дополнительной информации https://nextjs.org/docs/api-routes/dynamic-api-routes

Комментарии:

1. Это правильный ответ. Принятый выдает ошибку с жалобой на незаконное использование перехватов.