В этом руководстве описывается, как перевести приложения, использующие API Directions или Distance Matrix, на использование API Routes. Подробную информацию об API Routes см. в обзоре продукта .
Рекомендации по выставлению счетов при миграции
Данное руководство применимо, если использование вашего API достаточно велико для перехода на тарифный план второго уровня. При миграции на более новую версию API с вас также будет взиматься плата за другой SKU. Чтобы избежать увеличения затрат в течение месяца перехода, мы рекомендуем переключиться на новые API, находящиеся в эксплуатации, как можно ближе к началу месяца. Это обеспечит вам доступ к наиболее выгодным ежемесячным тарифным планам в течение месяца миграции. Информацию о тарифных планах см. на странице с ценами и в разделе часто задаваемых вопросов о ценах .
Обновите конечные точки REST API.
Обновите свой код, чтобы использовать новые конечные точки API маршрутизации.
Из API маршрутов
| API для построения маршрутов | https://maps.googleapis.com/maps/api/directions/ outputFormat ? parameters |
| API маршрутов | https://routes.googleapis.com/directions/v2:computeRoutes |
Из API матрицы расстояний
| API матрицы расстояний | https://maps.googleapis.com/maps/api/distancematrix/ outputFormat ? parameters |
| API маршрутов | https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix |
Преобразовать параметры URL для использования тела запроса HTTPS.
При использовании Directions API и Distance Matrix API вы передаете свойства конфигурации в качестве параметров URL-адреса в HTTP GET запрос. Например, для Directions API:
https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
С помощью API маршрутов вы передаете параметры в теле запроса или в заголовках в рамках HTTP POST запроса. Примеры см.:
Преобразовать путевые точки, закодированные в виде полилиний, в путевые точки местоположения.
В API Directions (устаревшая версия) доступна возможность указания путевых точек в виде закодированных полилиний, что позволяет уместить большое количество путевых точек в URL-адресе, ограниченном 16384 символами. В API Routes эта функция не требуется, поскольку путевые точки могут передаваться в теле запроса REST или gRPC в виде координат широты/долготы. Примеры см. в примере HTTP в документе «Вычисление матрицы маршрута» или в документе « Определение промежуточной путевой точки» в документе «Указание промежуточных путевых точек» .
Преобразовать параметры
В следующих таблицах перечислены параметры API Directions и API Distance Matrix, которые были переименованы или изменены, а также параметры, не поддерживаемые в версии GA. Обновите свой код, если вы используете какие-либо из этих параметров.
Запрос на преобразование параметров
| Параметр матрицы направлений или расстояний | Параметр API маршрутов | Примечания |
|---|---|---|
alternatives | computeAlternativeRoutes | |
arrival_time | arrivalTime | Доступно только в режиме TRANSIT и не одновременно с departureTime . |
avoid | routeModifiers | |
departure_time | departureTime | Не может использоваться одновременно с arrivalTime . |
language | languageCode | Поддерживается только для вычислительных маршрутов. |
mode | travelMode | Добавлена поддержка для |
region | regionCode | |
traffic_model | trafficModel | Узнать больше |
transit_mode | "travelMode": "TRANSIT" | В API Directions (устаревшая версия) в маршруте общественного транспорта каждый сегмент поездки с одним и тем же видом транспорта (например, пешком или на общественном транспорте) считается одним шагом, а отдельные инструкции для этого вида транспорта представляют собой подшаги. В отличие от этого, в API Routes шаги представляют собой одну инструкцию навигации для всех типов передвижения. Таким образом, каждая инструкция навигации является шагом. Для нескольких шагов в одном виде транспорта API Routes предоставляет метаданные, содержащие сводку шагов для этого вида транспорта, в поле `stepsOverview`. Чтобы запросить эти метаданные, используйте маску поля `routes.legs.stepsOverview`. Подробнее . |
transit_routing_preference | transitRoutingPreference | Узнать больше |
units | units | Узнать больше |
waypoints | intermediates | Удалена поддержка закодированных полилиний . |
optimize=true для путевых точек | "optimizeWaypointOrder": "true" | Узнать больше |
Преобразование параметров отклика
| Параметр матрицы направлений или расстояний | Параметр API маршрутов | Примечания |
|---|---|---|
copyrights | В ответе это не указано. При отображении результатов пользователям необходимо добавить следующее утверждение: Например: | |
distance | distanceMeters | Расстояние указывается только в метрах. |
duration_in_traffic | duration | Удалено из API маршрутов, используйте duration . |
status | Недоступно. Используйте коды ответов HTTP для ошибок, сообщаемых API. Дополнительную информацию см. в разделе «Обработка ошибок запроса» . | |
geocoded_waypoints | geocoding_results | Поддерживается только для вычислительных маршрутов. Содержит информацию о результатах геокодирования только для путевых точек, указанных в качестве адресов. |
bounds | viewport | |
legs.end_address | Нет в наличии. | Для высокоточной прокладки маршрута используйте идентификаторы мест вместо координат. Идентификаторы мест содержат данные, которые позволяют привязать маршрут к правильным точкам доступа.
|
legs.start_address | Нет в наличии. | |
overview_polyline | полилиния | |
summary | description | |
waypoint_order | optimizedIntermediateWaypointIndex |