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