#c# #google-maps #google-api
#c# #google-карты #google-api
Вопрос:
Я хочу получить distance
, в конечном итоге, другую информацию, запрашивающую через google API
. Я получил Google API key
. Как вы видите ниже, у меня есть общий шаблон, который я заполняю во время запуска программы, в нем могут быть путевые точки и режимы перемещения. Каким должен быть запрос Google API для получения расстояния и другой информации, скажем, через JSON
?
String mapsUrl = $"https://www.google.com/maps/dir/?api=1amp;origin={origin}amp;destination={destination}amp;waypoints={torun}|{lodz}amp;travelmode={travelMode}amp;dir_action=navigate";
Ответ №1:
Из документации Google здесь — вам нужно будет использовать Distance Matrix API.
Запрос будет выглядеть примерно так:
https://maps.googleapis.com/maps/api/distancematrix/json?units=imperialamp;origins=Washington,DCamp;destinations=New York City,NYamp;key=YOUR_API_KEY
Замените заполнитель YOUR_API_KEY своим ключом.
Ответом будет Json в этом формате:
{
"destination_addresses" : [ "New York, NY, USA" ],
"origin_addresses" : [ "Washington, DC, USA" ],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "225 mi",
"value" : 361715
},
"duration" : {
"text" : "3 hours 49 mins",
"value" : 13725
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}
если у вас нет правильного ключа API, выполните следующие действия:
- Войдите в свою консоль облачной платформы Google
- Добавьте свой проект и добавьте API. Пожалуйста, обратите внимание, что API Distance Matrix не является бесплатным.
- Как только вы это сделаете, вы получите свой ключ API.
Редактировать
Если вам нужно добавить несколько путевых точек, вам нужно использовать другой API, см. документацию Maps JavaScript API Directions Service. В двух словах это то же самое, что и карта Google.
Это позволяет вам добавлять массив путевых точек. Опять же, это не бесплатно — это платный сервис.
DirectionsResult
Объект будет содержать Directions Legs
(расстояние в метрах)
Комментарии:
1. 1. Что делать, если есть путевые точки? 2. Я получил Google API — какова цена при использовании / или как он вычисляет этот API матрицы расстояний?
2. Вся необходимая информация содержится в их документации: цена, как ее использовать и т.д. API DM, насколько я вижу, основан на двух точках.
3. итак, нет способа измерить расстояние на основе более чем двух точек? :O