Общая информация о переносе

Разработчики из Европейской экономической зоны (ЕЭЗ)

В этом руководстве описаны основные различия между устаревшим сервисом Places и новым классом Place. Переход на класс Place дает значительные преимущества, включая повышенную производительность и новую модель ценообразования. Чтобы максимально эффективно использовать Places и поддерживать приложения в актуальном состоянии, ознакомьтесь с изменениями, описанными в этом руководстве.

Рекомендации по переносу платежных аккаунтов

Эти рекомендации применимы, если вы используете API достаточно активно, чтобы перейти на второй уровень цен. При переходе на более новую версию API вы также будете оплачивать другой SKU. Чтобы избежать дополнительных расходов в месяц перехода, рекомендуем переключиться на новые API как можно ближе к началу месяца. Это позволит вам перейти на наиболее выгодные тарифные планы в месяц переноса. Информацию о тарифных планах можно найти на странице с ценами и в разделе часто задаваемых вопросов о ценах.

Как включить Places API

Класс Place зависит от сервиса Places API. Чтобы использовать функции нового класса Place, сначала включите Places API (новая версия) в своем облачном проекте Google Cloud. Подробнее о том, как начать работу…

Общие изменения

В таблице ниже перечислены основные различия между PlacesService и Place.

PlacesService (устаревший) Place (новое)
Для обработки объекта результатов и ответа google.maps.places.PlacesServiceStatus методы требуют использования обратного вызова. Использует объекты Promise и работает асинхронно.
Для методов требуется проверка PlacesServiceStatus. Проверка статуса не требуется, можно использовать стандартную обработку ошибок.
Поля данных о месте форматируются с использованием змеиного регистра. Поля данных о местах форматируются с использованием верблюжьего регистра.
Ограничено фиксированным набором типов мест и полей данных о местах. Расширенный выбор регулярно обновляемых типов мест и полей данных о местах.

Изменения, связанные с API

Класс Place предоставляет API для работы с библиотекой Places и поддерживает современные шаблоны использования, такие как Promises. Класс Place предоставляет те же поля данных и типы мест, что и устаревший сервис Places, а также включает множество новых значений для полей данных и типов мест.

В таблице ниже показано, как функции сервиса Places сопоставляются с функциями класса Place.

Сервис Places (устаревший) Класс Place (новый)
Поля сведений о месте Поля данных класса Place
Типы мест Типы мест
PlacesService.findPlaceFromQuery() Place.searchByText()
PlacesService.findPlaceFromPhoneNumber() Place.searchByText()
PlacesService.textSearch() Place.searchByText()
PlacesService.nearbySearch() Place.searchNearby()
PlacesService.getDetails() Place.fetchFields()
Places.AutocompletionRequest Places.AutocompleteRequest
Places.AutocompletePrediction Places.PlacePrediction
Класс Autocomplete Класс PlaceAutocompleteElement
Класс SearchBox ---

Как загрузить библиотеку Places

Способ загрузки библиотеки Places зависит от того, какой начальный загрузчик используется. Если в вашем приложении используется динамический импорт библиотек, вы можете загружать нужные библиотеки во время выполнения, используя оператор await для вызова importLibrary(), как показано ниже.

const { Place } = await google.maps.importLibrary("places");

Если в вашем приложении используется тег для прямой загрузки скрипта, запросите библиотеку places в загрузочном скрипте:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>

Подробнее о загрузке Maps JavaScript API…

В этом разделе приведены руководства, которые помогут вам перевести приложения на использование новой версии Places API: