요약
Google Places 영업시간 조회에서 Text Search의 첫 번째 결과를 바로 사용하지 않도록 개선합니다.
배경
현재 api/google-places/placeHours.ts의 lookupPlaceHours는 searchResult.places?.[0]?.id를 Google Place ID로 사용합니다. locationBias는 검색 결과를 제한하지 않습니다. 따라서 동명 장소 또는 다른 지역의 장소가 선택될 수 있습니다.
백엔드와 Google Place ID 전달 및 검증 계약이 필요하므로, 이 작업은 현재 PR에서 분리합니다.
작업 범위
- 백엔드와 신뢰 가능한 Google Place ID의 저장·전달 계약을 정의합니다.
- 가능하면 클라이언트가 검증된 Google Place ID를 전달하도록 API 계약을 확장합니다.
- Text Search를 유지해야 하면 후보 검증에 필요한 이름, 주소, 좌표 필드를 요청합니다.
- 요청한 장소 정보와 검색 후보를 비교합니다.
- 일치하는 후보가 없으면
null을 반환합니다.
- 검증된 Google Place ID만 Place Details 요청에 사용합니다.
영향 영역
api/google-places/placeHours.ts
- Google Places 영업시간 조회 API 계약
- 백엔드의 장소 식별자 전달 로직
완료 조건
- 동명 장소와 다른 지역의 장소가 첫 번째 검색 결과라는 이유만으로 선택되지 않습니다.
- 검증된 Google Place ID만 Place Details 요청에 전달됩니다.
- 일치 후보가 없을 때 API는 장소 영업시간을 반환하지 않습니다.
- 백엔드와 프론트엔드의 Google Place ID 계약을 문서화합니다.
- 관련 테스트를 추가합니다.
참고
요약
Google Places 영업시간 조회에서 Text Search의 첫 번째 결과를 바로 사용하지 않도록 개선합니다.
배경
현재
api/google-places/placeHours.ts의lookupPlaceHours는searchResult.places?.[0]?.id를 Google Place ID로 사용합니다.locationBias는 검색 결과를 제한하지 않습니다. 따라서 동명 장소 또는 다른 지역의 장소가 선택될 수 있습니다.백엔드와 Google Place ID 전달 및 검증 계약이 필요하므로, 이 작업은 현재 PR에서 분리합니다.
작업 범위
null을 반환합니다.영향 영역
api/google-places/placeHours.ts완료 조건
참고