Description 설명
백엔드의 Google Places 검색 field mask에는 이미 photos.name이 포함되어 있지 않으므로 장소 검색 API 자체는 변경하지 않는다.
현재 추가 사진 호출은 프론트엔드의 SearchResultCard가 검색 결과마다 별도 /places/photos API를 호출하면서 발생한다.
검색 결과 목록에서는 사진을 조회하지 않고, 사용자가 장소를 선택하거나 상세 정보를 연 이후에만 해당 장소의 사진을 조회하도록 변경한다.
기대 동작
장소 검색 결과 목록은 이름, 카테고리, 주소 등 텍스트 정보만 표시한다.
검색 결과 화면 진입이나 목록 스크롤만으로 /places/photos 또는 /places/photos/batch가 호출되지 않는다.
사용자가 장소를 선택하거나 상세 화면을 열었을 때만 선택한 장소의 사진을 조회한다.
일정, 북마크, 채팅 등 사용 의도가 명확한 화면의 기존 사진 지연 로딩은 유지한다.
백엔드의 googlePlaceId + 이미지 크기 기반 공유 캐시 구조는 변경하지 않는다.
참고
관련 코드:
src/components/place/SearchResultCard.tsx
src/app/(main)/search/page.tsx
src/hooks/useInViewport.ts
검색 결과에서 SearchResultCard에 showThumbnail={false}를 전달하는 방식으로 단순하게 처리할 수 있다.
이 작업은 Google Places의 기본 장소 검색 호출이 아니라 검색 결과에서 파생되는 사진 호출을 제거하는 것이 목적이다.
백엔드 캐시 개선은 이 작업에 필수적이지 않아 uttae/backend-server#169를 별도 작업으로 진행하지 않는다.
OSM/Wikimedia 이미지 연동은 이번 작업 범위에서 제외한다.
Reactions are currently unavailable
You can’t perform that action at this time.
설명
photos.name이 포함되어 있지 않으므로 장소 검색 API 자체는 변경하지 않는다.SearchResultCard가 검색 결과마다 별도/places/photosAPI를 호출하면서 발생한다.기대 동작
/places/photos또는/places/photos/batch가 호출되지 않는다.googlePlaceId + 이미지 크기기반 공유 캐시 구조는 변경하지 않는다.참고
src/components/place/SearchResultCard.tsxsrc/app/(main)/search/page.tsxsrc/hooks/useInViewport.tsSearchResultCard에showThumbnail={false}를 전달하는 방식으로 단순하게 처리할 수 있다.uttae/backend-server#169를 별도 작업으로 진행하지 않는다.