API маршрутов обеспечивает улучшенную производительность при расчете маршрутов, расстояния и времени в пути, что делает целесообразным замену приложений, использующих API маршрутов и API матрицы расстояний. Большая часть функциональности API маршрутов обратно совместима как с API маршрутов, так и с API матрицы расстояний.
Это руководство поможет вам понять ключевые отличия Routes API от продуктов, которые он заменяет, а также расскажет, как вносить необходимые изменения. Более подробную информацию о других функциях Routes API см. в обзоре продукта .
Ключевые улучшения
В этом разделе рассматриваются некоторые улучшения, которые вы можете ожидать при использовании Routes API в ваших приложениях.
Увеличены лимиты запросов
| API маршрутов Вычислить матрицу маршрутов |
|
| API матрицы расстояний |
|
Более быстрые ответы на запросы
Функция Compute Route Matrix обеспечивает следующие улучшения по задержке:
- Получайте потоковые элементы ответа до того, как будет вычислена вся матрица.
- Используйте маски полей для настройки деталей ответа , запрашивая только необходимые данные — это передовая практика, которая также помогает снизить затраты.
- Улучшены расчеты маршрутов для транспортных потоков , что позволяет найти компромисс между качеством данных и временем отклика.
Улучшения маршрутизации
Функция вычисления маршрута предлагает следующие улучшения маршрутизации:
- Информация о платных дорогах, а также о расстоянии и предполагаемом времени прибытия.
- Маршруты для двухколесных транспортных средств .
- Проверьте безопасность мест промежуточных остановок .
- Повышена точность расчета времени прибытия за счет указания направления движения и обочины дороги в качестве путевых точек.
Запрашивайте только необходимые данные.
Теперь вы можете указать, какие поля следует вернуть, что сократит время обработки и расходы на выставление счетов.
| API маршрутов Вычислительные маршруты Матрица вычислительных маршрутов | В ваших запросах необходимо использовать маску поля, чтобы указать, какие поля вы хотите получить в ответе. Маскировка поля гарантирует, что вы не запросите ненужные данные, что позволит избежать лишнего времени обработки и дополнительных расходов. Для получения дополнительной информации см. раздел «Выбор полей для возврата» . |
| API для построения маршрутов API матрицы расстояний | Возвращает список полей по умолчанию, даже если вашему приложению они строго не нужны. Это может привести к излишнему времени обработки и дополнительным расходам на выставление счетов. |
Улучшенные расчеты маршрутов для транспортных потоков
API маршрутизации поддерживает три варианта маршрутизации, которые можно использовать для баланса между задержкой ответа и качеством данных при запросе информации о трафике.
Для получения дополнительной информации см. раздел «Настройка качества в зависимости от задержки» .
TRAFFIC_UNAWARE(по умолчанию) | Для расчета маршрута используются усредненные данные о дорожном движении, не зависящие от времени, а не данные о движении в реальном времени, что обеспечивает минимальную задержку ответа. Этот параметр эквивалентен значению, используемому в API построения маршрутов и API матрицы расстояний, когда данные о дорожном движении не используются. |
TRAFFIC_AWARE(новый) | Оптимизированное по производительности качество отображения дорожной ситуации в реальном времени для уменьшения задержки. В отличие от TRAFFIC_AWARE_OPTIMAL , этот параметр применяет оптимизации для значительного уменьшения задержки. Этот параметр также является новым для API маршрутов, поскольку в API направлений или API матрицы расстояний нет аналогов. |
TRAFFIC_AWARE_OPTIMAL | Высококачественные, полные данные о дорожной ситуации. Этот параметр обеспечивает максимальную задержку и эквивалентен параметру departure_time в API Directions и API Distance Matrix.Этот параметр аналогичен режиму, используемому на сайте maps.google.com и в мобильном приложении Google Maps. |
Сравнение результатов расчета маршрута
В приведенной ниже таблице сравниваются варианты построения маршрутов между сервисами Routes API , Directions API и Distance Matrix API .
| Вариант движения | API маршрутов | API для построения маршрутов API матрицы расстояний | Задержка |
|---|---|---|---|
| Информация о дорожной ситуации в режиме реального времени отсутствует. | TRAFFIC_UNAWARE | Свойство departure_time не задано | Самый низкий уровень задержки из трех режимов. |
| Действуют данные о дорожной ситуации в режиме реального времени. | TRAFFIC_AWARE | Нет эквивалента | Добавлен новый режим через API маршрутов. Он обеспечивает немного большую задержку, чем Он имеет гораздо меньшую задержку, чем |
| Применяются высококачественные, полные данные о дорожном движении в режиме реального времени. | TRAFFIC_AWARE_OPTIMAL | установлено свойство departure_time | Аналогично режиму, используемому на сайте maps.google.com и в мобильном приложении Google Maps. Для вычисления матрицы маршрутов количество элементов в запросе (количество источников × количество пунктов назначения) не может превышать 100. |
Ключевые отличия
В этом разделе рассматриваются ключевые различия между Routes API и сервисами, которые он заменяет, а также способы устранения этих различий при миграции с этих сервисов в существующих приложениях.
Позвоните в одну службу вместо двух.
| API маршрутов | Для использования Compute Routes и Compute Route Matrix вашим приложением необходимо включить в консоли API только одну службу. Для получения более подробной информации см. раздел «Настройка в консоли Google API» . |
| API для построения маршрутов API матрицы расстояний | Включите два сервиса: API для построения маршрутов и API для расчета расстояний, как отдельные сервисы в консоли API. |
Использует HTTPS POST запросы
| API маршрутов | Передавайте параметры в теле запроса или в заголовках в рамках HTTP POST запроса.Примеры см.: - Рассчитать маршрут - Вычислить матрицу маршрутов |
| API для построения маршрутов API матрицы расстояний | Передавайте параметры URL-адреса с помощью HTTP GET запроса. |
Различия в реакции ETA
API маршрутов возвращает расчетное время прибытия (ETA) и использует свойство ответа " duration " иначе, чем сервисы API направлений и API матрицы расстояний, как показано в таблице ниже.
| Тип ETA | API маршрутов | API для построения маршрутов API матрицы расстояний |
|---|---|---|
| Расчетное время прибытия не зависит от дорожной ситуации и времени движения. | Настройка выполняется с помощью
| Это соответствует случаю, когда
|
| Расчетное время прибытия с учетом дорожной ситуации в реальном времени. | Установите значение с помощью
| Укажите время
|
Полилинейные путевые точки
С помощью этого сервиса вам больше не нужно преобразовывать координаты широты/долготы в полилинейные путевые точки, поскольку он поддерживает тело POST-запроса и, следовательно, больше не подвержен ограничениям на строки URL. Некоторые пользователи Distance Matrix API решили проблему с ограничениями на запросы, преобразуя точки широты/долготы в полилинейные путевые точки.
Отформатированные адреса (обратное геокодирование)
API маршрутов не предоставляет отформатированные адреса в ответе. Для получения отформатированных адресов используйте API геокодирования, который разработан специально для этой цели и обеспечивает более качественные результаты.
Доступные виды транспорта
Как и в случае с API маршрутов, API маршрутов использует режим DRIVE по умолчанию, если в запросе маршрута не указан способ передвижения. Однако, если в запросе указан способ передвижения для маршрута, API маршрутов не возвращает массив доступных способов передвижения в качестве альтернативных вариантов. Если ваш сценарий использования зависит от этой функции, создайте заявку с описанием того, как вы её используете, чтобы мы могли отследить ситуацию.
XML как формат ответа
API маршрутов не предоставляет XML в качестве формата ответа. В интернете можно найти множество конвертеров JSON в XML, которые подойдут для ваших целей.