
JBLOG: 노션 데이터를 이용한 블로그
📅기간🎯종류
2025-08 ~ 2025-08
🔗사이트🔗GitHub🧠회고⚡기술Next.jsTypescriptFastAPIAWS개인
개인
👋 소개
Notion을 CMS로 사용하는 Next.js(앱 라우터) 기반의 블로그/프로젝트 포트폴리오입니다. 게시글/프로젝트 메타데이터는 Notion 데이터베이스에서 가져오고, 본문은
react-notion-x로 렌더링합니다.
👀 기술적 도전
notion-client 라이브러리가 배포 환경에서 DB의 데이터를 불러오지 못하고 있었다.원인
- notion-client가 내부적으로 사용하는
ky가 Next 15 환경에서 네이티브 fetch 조합과 충돌 - 따라서 요청이 무한 대기
- json 옵션이 제대로 전송되지 않아 loadPageChunk가 400을 반환했다.
해결
next.config.ts- webpack alias로
ky를src/lib/ky-shim.ts에 매핑하여 Next 15 환경에서 notion-client의 ky 의존성 문제를 우회
src/lib/ky-shim.ts- ofetch 기반으로 ky 호환 인터페이스의
post().json()만 최소 구현
Notion 데이터의 이미지들이 종종 깨지고 현상이 발견되었다.
원인
- Notion의 첨부된 image들의 presigned url의 유효기간이 지나 잘못된 url을 가져오는 상황
해결
- Notion의 데이터들을 내 DB로 저장시키는 백엔드 로직 구현 및 배포
