Inflearn brand logo image

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

SEONGHOON KIM (Ste님의 프로필 이미지
SEONGHOON KIM (Ste

작성한 질문수

Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)

블로그 상세페이지 구현

상세페이지 구현 Author의 name 프러퍼티가 조회가 안됩니다.

작성

·

43

1

아무리 해도 안되서, 기존 코드를 복붙하고 사용하고, 공식문서를 봐도

image.png

페이지 properties의 Author.people[0] 내부에는

 

{ id: "0219380..." , object: "user" }

만 있습니다. 이마저도 문자열이라 name프로퍼티가 없습니다.

노션 템플릿도 author가 적용이 되어있는 걸 확인했는데요.

혹시 api가 변경이 된 것일까요?

 

image.png

 

답변 2

0

짐코딩님의 프로필 이미지
짐코딩
지식공유자

안녕하세요 🙂

API는 그대로인데요.

노션에 Author User가 설정이 잘 되어 있을까요?

아니면 노션에 Author 를 다른 계정을 설정해 보시겠어요?

콘솔에 결과를 출력해가며 디버깅을 해봐야 알것 같아요~!

 

 

아 보니까 짐코딩님 사용자 정보를 제가 조회할 수 없어서 그런거 같아요.

 

작성자를 제 계정으로 바꾸니까 name이 조회가 되었습니다

0

안녕하세요, SEONGHOON KIM (Ste)님, 인프런 AI 인턴입니다.

Next.js와 Notion API를 사용하면서 Author 정보에서 ‘name’ 프로퍼티를 가져올 수 없는 문제를 겪고 계신 것 같네요. Notion API에서 Author와 같은 사용자 관련 정보를 가져올 때, ID만 반환되는 경우가 많습니다. 여기서는 추가적인 사용자 정보를 얻기 위해서는 별도로 사용자 데이터를 요청해야 합니다.

주요 원인과 해결 방법:

  1. Notion API의 User 정보 요청:

    • Notion API에서 people 타입의 사용자 객체는 기본적으로 ID와 같은 제한된 정보를 제공합니다. ‘name’과 같은 추가 정보를 얻기 위해서는 해당 ID를 사용해 Notion API의 별도 엔드포인트로 추가 요청을 해야 합니다.
  2. API 변경 가능성 확인:

    • Notion API는 진행 중인 업데이트로 인해 일시적인 변경 사항이 있을 수 있습니다. Notion 공식 API 문서에서 최신 변경 사항을 확인하는 것이 좋습니다.
  3. 데이터 구조 재확인:

    • 먼저, API로 반환되는 데이터를 콘솔로 출력하여 제대로 수신되고 있는지, 혹시 구조에 변동사항이 있는지 확인해보세요.

해결 접근 방법:

  • 사용자 정보 요청:
  const fetchAuthorName = async (authorId) => {
    const response = await fetch(`https://api.notion.com/v1/users/${authorId}`, {
      headers: {
        'Authorization': `Bearer ${YOUR_INTEGRATION_TOKEN}`,
        'Notion-Version': '2022-06-28'
      }
    });
    const data = await response.json();
    return data.name; // 'name' 프로퍼티가 리턴됩니다.
  };
  • 코드 예시:
    • 위 코드처럼 추가적인 사용자 정보를 users 엔드포인트에 요청하여 얻을 수 있습니다. 얻은 데이터를 해당 사용자 객체에 결합해 사용하면 됩니다.

이러한 방법으로 문제를 해결할 수 있기를 바랍니다. Next.js와 Notion API는 강력한 도구이고 이 과정을 통해 많은 것을 배울 수 있을 것입니다. 추가 질문이 있거나 문제가 지속되면 언제든지 질문해 주세요.

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

SEONGHOON KIM (Ste님의 프로필 이미지
SEONGHOON KIM (Ste

작성한 질문수

질문하기