- HTTP-запрос
- Тело запроса
- Тело ответа
- МаршрутМатрицаПроисхождение
- МаршрутМатрицаНазначение
- Дополнительные вычисления
- МаршрутМатрицаЭлементУсловие
- Локализованные значения
Принимает список пунктов отправления и назначения и возвращает поток, содержащий информацию о маршруте для каждой комбинации пункта отправления и назначения.
ПРИМЕЧАНИЕ. Для этого метода требуется указать маску поля ответа во входных данных. Вы можете предоставить маску поля ответа, используя параметр URL-адреса $fields
или fields
или используя заголовок HTTP/gRPC X-Goog-FieldMask
(см. доступные параметры и заголовки URL-адреса ). Значение представляет собой список путей к полям, разделенных запятыми. См. подробную документацию о том , как создавать пути к полям .
Например, в этом методе:
- Маска всех доступных полей (для проверки вручную):
X-Goog-FieldMask: *
- Маска поля длительности маршрута, расстояний, статуса элемента, состояния и индексов элементов (пример производственной настройки):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
Крайне важно включить status
в маску поля, иначе все сообщения будут выглядеть нормально. Google не рекомендует использовать маску поля ответа с подстановочным знаком ( *
), потому что:
- Выбор только тех полей, которые вам нужны, помогает нашему серверу сэкономить вычислительные циклы, позволяя нам возвращать вам результат с меньшей задержкой.
- Выбор только тех полей, которые вам нужны в вашем рабочем задании, обеспечивает стабильную задержку. В будущем мы можем добавить больше полей ответа, и эти новые поля могут потребовать дополнительного времени вычислений. Если вы выберете все поля или выберете все поля на верхнем уровне, производительность может снизиться, поскольку любое новое добавляемое поле будет автоматически включено в ответ.
- Выбор только тех полей, которые вам нужны, приводит к меньшему размеру ответа и, следовательно, к увеличению пропускной способности сети.
HTTP-запрос
POST https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix
URL-адрес использует синтаксис транскодирования gRPC .
Тело запроса
Тело запроса содержит данные следующей структуры:
JSON-представление |
---|
{ "origins": [ { object ( |
Поля | |
---|---|
origins[] | Необходимый. Массив источников, определяющий строки матрицы ответа. К числу элементов отправления и назначения применяются несколько ограничений по размеру:
|
destinations[] | Необходимый. Массив пунктов назначения, определяющий столбцы матрицы ответов. |
travelMode | Необязательный. Указывает вид транспорта. |
routingPreference | Необязательный. Указывает, как вычислить маршрут. Сервер пытается использовать выбранную настройку маршрутизации для расчета маршрута. Если предпочтения маршрутизации приводят к ошибке или слишком большой задержке, возвращается ошибка. Вы можете указать эту опцию, только если |
departureTime | Необязательный. Время отправления. Если вы не установите это значение, то по умолчанию это значение будет соответствовать времени, когда вы сделали запрос. ПРИМЕЧАНИЕ. Вы можете указать Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: |
arrivalTime | Необязательный. Время прибытия. ПРИМЕЧАНИЕ. Можно установить только в том случае, если для Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: |
languageCode | Необязательный. Код языка BCP-47, например «en-US» или «sr-Latn». Дополнительные сведения см. в разделе Идентификатор локали Unicode . Список поддерживаемых языков см. в разделе « Поддержка языков». Если вы не укажете это значение, язык отображения будет определяться на основе местоположения первого источника. |
regionCode | Необязательный. Код региона в виде двухсимвольного значения ccTLD («домен верхнего уровня»). Дополнительную информацию см. в разделе Домены верхнего уровня с кодом страны . |
units | Необязательный. Указывает единицы измерения для полей отображения. |
extraComputations[] | Необязательный. Список дополнительных вычислений, которые можно использовать для выполнения запроса. Примечание. Эти дополнительные вычисления могут возвращать дополнительные поля в ответе. Эти дополнительные поля также должны быть указаны в маске поля, которая будет возвращена в ответе. |
trafficModel | Необязательный. Указывает предположения, которые следует использовать при расчете времени в пробке. Этот параметр влияет на значение, возвращаемое в поле длительности в |
transitPreferences | Необязательный. Указывает предпочтения, влияющие на маршрут, возвращаемый для |
Тело ответа
Содержит информацию о маршруте, вычисленную для пары отправитель/назначение в API v2.computeRouteMatrix. Этот прототип можно передать клиенту.
В случае успеха тело ответа содержит данные следующей структуры:
JSON-представление |
---|
{ "status": { object ( |
Поля | |
---|---|
status | Код состояния ошибки для этого элемента. |
condition | Указывает, найден ли маршрут или нет. Независимость от статуса. |
distanceMeters | Дальность прохождения маршрута в метрах. |
duration | Время, необходимое для прохождения маршрута. Если вы установите для Продолжительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « |
staticDuration | Продолжительность проезда по маршруту без учета условий движения. Продолжительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « |
travelAdvisory | Дополнительная информация о маршруте. Например: информация об ограничениях и информация о платных дорогах. |
fallbackInfo | В некоторых случаях, когда сервер не может вычислить маршрут с заданными предпочтениями для этой конкретной пары отправитель/назначение, он может вернуться к использованию другого режима расчета. Если используется резервный режим, это поле содержит подробную информацию о резервном ответе. В противном случае это поле не установлено. |
localizedValues | Текстовые представления свойств |
originIndex | Индекс источника запроса, начинающийся с нуля. |
destinationIndex | Индекс назначения в запросе, начинающийся с нуля. |
МаршрутМатрицаПроисхождение
Единый источник для ComputeRouteMatrixRequest.
JSON-представление |
---|
{ "waypoint": { object ( |
Поля | |
---|---|
waypoint | Необходимый. Исходная путевая точка |
routeModifiers | Необязательный. Модификаторы для каждого маршрута, который принимает это место в качестве источника. |
МаршрутМатрицаНазначение
Единое назначение для ComputeRouteMatrixRequest
JSON-представление |
---|
{
"waypoint": {
object ( |
Поля | |
---|---|
waypoint | Необходимый. Пункт назначения |
Дополнительные вычисления
Дополнительные вычисления, которые необходимо выполнить при выполнении запроса.
Перечисления | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED | Не используется. Запросы, содержащие это значение, не будут выполнены. |
TOLLS | Информация о дорожных сборах для элемента(ов) матрицы. |
МаршрутМатрицаЭлементУсловие
Состояние возвращаемого маршрута.
Перечисления | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED | Используется только в том случае, если status элемента не в порядке. |
ROUTE_EXISTS | Маршрут найден, и для элемента заполнена соответствующая информация. |
ROUTE_NOT_FOUND | Маршрут не найден. Поля, содержащие информацию о маршруте, например distanceMeters или duration , в элементе заполняться не будут. |
Локализованные значения
Текстовые представления определенных свойств.
JSON-представление |
---|
{ "distance": { object ( |
Поля | |
---|---|
distance | Расстояние путешествия представлено в текстовой форме. |
duration | Продолжительность представлена в текстовой форме с учетом условий дорожного движения. Примечание. Если информация о трафике не запрашивалась, это значение совпадает со значением staticDuration. |
staticDuration | Продолжительность представлена в текстовом виде без учета условий движения. |
transitFare | Транзитный тариф представлен в текстовом виде. |