@bqio
https://bqio.github.io/

Как в Nextjs 13.4 добавить типизацию на req.json?

import TokenService from '@/app/services/TokenService'
import { NextResponse } from 'next/server'
import { IUserData } from '@/app/types/IUserData'

export async function POST(req: Request) {
  const { username, password } = await req.json() // Мне нужно типизировать как IUserData
  return NextResponse.json({ test: 1 })
}
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
YuriyVorobyov1333
@YuriyVorobyov1333
Software Developer
Пока есть такая проблема и нет типа для JSON, то говорить о какой-то супер продвинутой типизации рано

Сейчас можно сделать что-то вроде такого:
export async function POST(req: Request) {
  const { username, password } = (await req.json()) as IUserData;
  return NextResponse.json({ test: 1 });
}


Также можно посмотреть в сторону валидаторов для проверки корректных данных внутри json:
- Пример 1;
- Пример 2;
- Пример 3.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы