Как определить, реагировал ли пользователь на поиск в подобласти, местности, штате и т. Д. В API Google Maps? - PullRequest
1 голос
/ 08 ноября 2019

Я настраиваю службу определения местоположения, где пользователи могут искать места (например, больницы, вокзалы и т. Д.) В определенной области. Я хочу знать, существует ли способ определения степени детализации запроса пользователя, т. Е. Выполняет ли пользователь поиск в подобласти, местности, штате или во всей стране. Есть ли какой-нибудь API, который может дать мне разбивку запроса?

В настоящее время я использую api textSearch в google.maps.places.PlacesService для получения результатов из API карт Google. Это может вернуть до 60 результатов. Затем я беру один из place_id результата и использую API getDetails, чтобы получить подробную информацию о месте. Но это только разбивает адресные компоненты полученных результатов. Я бы хотел разбить запрос.

let placesSearchBoxService = new google.maps.places.PlacesService(map);
placesSearchBoxService.textSearch(request, (res, status, pag) => {
    // SEARCH UNSUCCESSFUL
    if (status !== 'OK') {
        return;
    }
    let detailRequest = { placeId: res[0].place_id };
    placesSearchBoxService.getDetails(detailRequest, (place, status) => {
        let { address_components: addressComponents } = place;
    ...
    });
});
...