- HTTP-запрос
- Текст запроса
- Тело ответа
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- Локализованные значения
Принимает список пунктов отправления и назначения и возвращает поток, содержащий информацию о маршруте для каждой комбинации пунктов отправления и назначения.
ПРИМЕЧАНИЕ: Этот метод требует указания маски поля ответа во входных данных. Маску поля ответа можно указать, используя параметр 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 | Необязательно. Время отправления. Если вы не укажете это значение, по умолчанию будет использоваться время, когда вы сделали запрос. ПРИМЕЧАНИЕ: Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры: |
arrivalTime | Необязательно. Время прибытия. ПРИМЕЧАНИЕ: Можно задать только если для Использует RFC 3339, согласно которому сгенерированный вывод всегда будет нормализован по оси Z и содержать 0, 3, 6 или 9 знаков после запятой. Также допускаются смещения, отличные от «Z». Примеры: |
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 | Индекс назначения в запросе (начиная с нуля). |
RouteMatrixOrigin
Единый источник для ComputeRouteMatrixRequest
| JSON-представление |
|---|
{ "waypoint": { object ( |
| Поля | |
|---|---|
waypoint | Обязательно. Исходная точка маршрута |
routeModifiers | Необязательно. Модификаторы для каждого маршрута, который использует эту точку в качестве исходной. |
RouteMatrixDestination
Единый пункт назначения для ComputeRouteMatrixRequest
| JSON-представление |
|---|
{
"waypoint": {
object ( |
| Поля | |
|---|---|
waypoint | Обязательно. Пункт назначения. |
ExtraComputation
При выполнении запроса необходимо выполнить дополнительные вычисления.
| Перечисления | |
|---|---|
EXTRA_COMPUTATION_UNSPECIFIED | Не используется. Запросы, содержащие это значение, не будут выполнены. |
TOLLS | Информация о плате за проезд для элемента(ов) матрицы. |
RouteMatrixElementCondition
Состояние возвращаемого маршрута.
| Перечисления | |
|---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED | Используется только в том случае, если status элемента не ОК. |
ROUTE_EXISTS | Маршрут найден, и для элемента заполнена соответствующая информация. |
ROUTE_NOT_FOUND | Маршрут не найден. Поля, содержащие информацию о маршруте, например, distanceMeters или duration , не будут заполнены в элементе. |
Локализованные значения
Текстовые представления определенных свойств.
| JSON-представление |
|---|
{ "distance": { object ( |
| Поля | |
|---|---|
distance | Расстояние поездки представлено в текстовом виде. |
duration | Длительность представлена в текстовом формате с учётом дорожной ситуации. Примечание: если информация о дорожной ситуации не запрашивалась, это значение совпадает со значением staticDuration. |
staticDuration | Продолжительность указана в текстовом виде без учета дорожной обстановки. |
transitFare | Стоимость проезда представлена в текстовом виде. |