Учитывая набор конечных и промежуточных путевых точек, а также цель маршрута, вычисляет лучший маршрут для цели маршрута. Также возвращает самый быстрый и самый короткий маршрут в качестве эталонных маршрутов.
ПРИМЕЧАНИЕ. Для этого метода требуется указать маску поля ответа во входных данных. Вы можете указать маску поля ответа, используя параметр URL-адреса $fields
или fields
или используя заголовок HTTP/gRPC X-Goog-FieldMask
(см. доступные параметры URL-адреса и заголовки . Значение представляет собой список путей к полям, разделенных запятыми. См. подробную документацию о том, как создавать пути к полям .
Например, в этом методе:
- Маска всех доступных полей (для проверки вручную):
X-Goog-FieldMask: *
- Маска поля с указанием расстояний, длительности маршрута, токенов и информации о платных дорогах:
X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo
Google не рекомендует использовать маску поля ответа с подстановочным знаком ( *
) или указывать маску поля на верхнем уровне ( routes
), потому что:
- Выбор только тех полей, которые вам нужны, помогает нашему серверу сэкономить вычислительные циклы, позволяя нам возвращать вам результат с меньшей задержкой.
- Выбор только тех полей, которые вам нужны в вашем рабочем задании, обеспечивает стабильную задержку. В будущем мы можем добавить больше полей ответа, и эти новые поля могут потребовать дополнительного времени вычислений. Если вы выберете все поля или выберете все поля на верхнем уровне, производительность может снизиться, поскольку любое новое добавляемое поле будет автоматически включено в ответ.
- Выбор только тех полей, которые вам нужны, приводит к меньшему размеру ответа и, следовательно, к увеличению пропускной способности сети.
HTTP-запрос
POST https://routespreferred.googleapis.com/v1:computeCustomRoutes
URL-адрес использует синтаксис транскодирования gRPC .
Тело запроса
Тело запроса содержит данные следующей структуры:
JSON-представление |
---|
{ "origin": { object ( |
Поля | |
---|---|
origin | Необходимый. Исходная путевая точка. |
destination | Необходимый. Маршрутная точка назначения. |
intermediates[] | Необязательный. Набор путевых точек на маршруте (за исключением конечных точек) для остановки или проезда. Поддерживается до 25 промежуточных путевых точек. |
travel Mode | Необязательный. Указывает вид транспорта. Поддерживаются только |
routing Preference | Необязательный. Указывает, как вычислить маршрут. Сервер пытается использовать выбранную настройку маршрутизации для расчета маршрута. Если предпочтения маршрутизации приводят к ошибке или слишком большой задержке, возвращается ошибка. Вы можете указать эту опцию, только если |
polyline Quality | Необязательный. Указывает предпочтения в отношении качества полилинии. |
polyline Encoding | Необязательный. Указывает предпочтительную кодировку полилинии. |
departure Time | Необязательный. Время отправления. Если вы не установите это значение, то по умолчанию это значение будет соответствовать времени, когда вы сделали запрос. Если вы установите это значение на время, которое уже произошло, запрос не будет выполнен. Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: |
route Modifiers | Необязательный. Набор условий, которые необходимо выполнить, влияющие на способ расчета маршрутов. |
route Objective | Необходимый. Цель маршрута для оптимизации. |
language Code | Необязательный. Код языка BCP-47, например «en-US» или «sr-Latn». Дополнительные сведения см. в разделе Идентификатор локали Unicode . Список поддерживаемых языков см. в разделе «Поддержка языков» . Если вы не укажете это значение, язык отображения будет определяться на основе местоположения запроса маршрута. |
units | Необязательный. Указывает единицы измерения для полей отображения. Сюда входит поле |
Тело ответа
В случае успеха тело ответа содержит экземпляр ComputeCustomRoutesResponse
.
Области авторизации
Требуется следующая область действия OAuth:
-
https://www.googleapis.com/auth/maps-platform.routespreferred
Дополнительную информацию см. в обзоре OAuth 2.0 .