인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

초랑이님의 프로필 이미지

작성한 질문수

한 입 크기로 잘라먹는 Next.js(v15)

4.1) 앱 라우터의 데이터 페칭

서버 에러가 납니다.

해결된 질문

작성

·

117

0

const { id } = await params;
  const response = await fetch(`${process.env.NEXT_PUBLIC_API_SERVER_URL}/book/${id}}`);
  const book = await response.json();

book { statusCode: 500, message: 'Internal server error' }

nest가 실행중인곳에는

 

Argument id is missing.

PrismaClientValidationError:

Invalid this.prisma.book.findUnique() invocation in

/Users/leecho/dev/onebite-books-server/src/book/book.service.ts:55:41

52 }

53

54 async findOneBook(id: number) {

→ 55 const book = await this.prisma.book.findUnique({

select: {

id: true,

title: true,

subTitle: true,

description: true,

author: true,

publisher: true,

coverImgUrl: true

},

where: {

+ id: Int

}

})

Argument id is missing.

 

이런 에러가 나는데 왜 이럴까요..?

답변 2

0

이정환 Winterlood님의 프로필 이미지
이정환 Winterlood
지식공유자

안녕하세요 이정환입니다.

혹시 Supabase 프로젝트가 중단되지는 않았는지 확인해보셨을까요?

강의에서 안내드린대로 일주일 동안 접근이 없을 경우 자동으로 비 활성화 됩니다.

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 초랑이님.

Next.js와 Prisma를 사용하는 중 발생한 에러에 대해 설명드리겠습니다. 제공된 코드와 오류 메시지를 기반으로 몇 가지 해결 방법을 제시하겠습니다.

문제 원인 분석 및 해결 방법

  1. id 파라미터 문제:

    • 코드에서 findOneBook 함수의 호출 시 id 파라미터가 전달되지 않았기 때문에 Prisma에서 Argument 'id' is missing 오류가 발생합니다.
    • findUnique 메소드의 where 조건에서 id 값을 받아야 하는데, 실제로 전달된 id 값이 없거나 undefined인 상황입니다.
    • 확인해보셔야 할 부분은 params 객체에서 id 값이 제대로 추출되고 있는지입니다. const { id } = await params; 구문에서 params 객체가 어떻게 구성되어 있는지 콘솔 로그 등을 통해 확인해보세요.
  2. API 엔드포인트 설정 문제:

    • fetch 요청에서 올바른 URL을 사용하고 있는지 확인해 주세요. 특히 중괄호(})가 URL에 포함되어 잘못된 요청이 발생할 수 있습니다. ${process.env.NEXT_PUBLIC_API_SERVER_URL}/book/${id} 형태로 수정하세요.
  3. Prisma 설정 및 클라이언트 문제:

    • Prisma 설정 파일에서 prisma.schema가 제대로 정의되어 있는지 확인하세요. 특히 book 테이블의 구조와 클라이언트 설정이 올바른지 점검하는 것이 좋습니다.
    • Prisma 클라이언트의 초기화 과정을 다시 점검하고, 연결이 올바르게 설정되어 있는지 확인하십시오.

이와 관련해 도움이 될만한 기존 질문 및 해결된 사례도 공유합니다:
- “Prisma와 데이터베이스 연결 문제 해결”

위의 방식들이 도움이 되길 바라며, 추가적인 질문이 있으시면 답글로 남겨주세요. 더 구체적인 코드와 설정 파일 정보를 제공해 주시면 보다 정확한 도움을 드릴 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.