Зачем переходить на Routes API?

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

API маршрутов обеспечивает улучшенную производительность при расчете маршрутов, расстояния и времени в пути, что делает целесообразным замену приложений, использующих API маршрутов и API матрицы расстояний. Большая часть функциональности API маршрутов обратно совместима как с API маршрутов, так и с API матрицы расстояний.

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

Ключевые улучшения

В этом разделе рассматриваются некоторые улучшения, которые вы можете ожидать при использовании Routes API в ваших приложениях.

Увеличены лимиты запросов

API маршрутов Вычислить матрицу маршрутов
  • Максимальное количество элементов — 625, если не указан параметр TRAFFIC_AWARE_OPTIMAL .
  • Максимальное количество элементов с TRAFFIC_AWARE_OPTIMAL — 100. См. Расширенные настройки маршрутизации .
  • Максимальное количество путевых точек (начальные и конечные), использующих идентификатор места, — 50.
API матрицы расстояний
  • Максимум 25 пунктов отправления или 25 пунктов назначения на один запрос.
  • Максимальное количество элементов (количество источников × количество получателей) на один запрос на стороне сервера — 100.

Более быстрые ответы на запросы

Функция 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_UNAWARE , с небольшим ухудшением качества прогнозируемого времени прибытия.

Он имеет гораздо меньшую задержку, чем TRAFFIC_AWARE_OPTIMAL .

Применяются высококачественные, полные данные о дорожном движении в режиме реального времени. 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 матрицы расстояний
Расчетное время прибытия не зависит от дорожной ситуации и времени движения.

Настройка выполняется с помощью TRAFFIC_UNAWARE .

  • ETA содержится в свойстве ответа duration .
  • Свойства ответа duration и staticDuration содержат одно и то же значение.

Это соответствует случаю, когда departure_time не был задан в запросе.

  • ETA содержится в свойстве ответа duration .
  • Свойство duration_in_traffic в ответе не возвращается.
Расчетное время прибытия с учетом дорожной ситуации в реальном времени.

Установите значение с помощью TRAFFIC_AWARE или TRAFFIC_AWARE_OPTIMAL .

  • Расчетное время прибытия с учетом трафика в реальном времени содержится в свойстве ответа duration .
  • Свойство staticDuration содержит продолжительность поездки по маршруту без учета дорожных условий.
  • Свойство duration_in_traffic больше не возвращается.

Укажите время departure_time в запросе.

  • Расчетное время прибытия с учетом трафика в реальном времени содержится в свойстве ответа duration_in_traffic .

Полилинейные путевые точки

С помощью этого сервиса вам больше не нужно преобразовывать координаты широты/долготы в полилинейные путевые точки, поскольку он поддерживает тело POST-запроса и, следовательно, больше не подвержен ограничениям на строки URL. Некоторые пользователи Distance Matrix API решили проблему с ограничениями на запросы, преобразуя точки широты/долготы в полилинейные путевые точки.

Отформатированные адреса (обратное геокодирование)

API маршрутов не предоставляет отформатированные адреса в ответе. Для получения отформатированных адресов используйте API геокодирования, который разработан специально для этой цели и обеспечивает более качественные результаты.

Доступные виды транспорта

Как и в случае с API маршрутов, API маршрутов использует режим DRIVE по умолчанию, если в запросе маршрута не указан способ передвижения. Однако, если в запросе указан способ передвижения для маршрута, API маршрутов не возвращает массив доступных способов передвижения в качестве альтернативных вариантов. Если ваш сценарий использования зависит от этой функции, создайте заявку с описанием того, как вы её используете, чтобы мы могли отследить ситуацию.

XML как формат ответа

API маршрутов не предоставляет XML в качестве формата ответа. В интернете можно найти множество конвертеров JSON в XML, которые подойдут для ваших целей.