Задать вопрос
@MrFox235
Начинающий веб-разработчик

Как получить маршрут Google Directions API?

Здравствуйте, у меня есть сайт на которм я хочу реализовать функцию рсчёта маршрута при помощи Google Directions API, мне нужно что бы пользователь вводил данные в "Пункт отправки:" и "Пункт прибытия" нажимал на кнопку и строился маршрут в реальном времени. В конце мне нужно получить расстояние и время в дороге, я это буду использовать в дальнейшем. Как можно реализовать такую функцию? Перерыл уже весь интернет но так и не нашел ответа(
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Maps Google</title>
    <link rel="stylesheet" href="/style.css">
</head>
<body>

    <div id="map"></div>

    <script>(g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})
        ({key: "AIzaSyCUY3UM6R0OKx5hajf30r7y1cbQh0bvOkw", v: "beta"});</script>

    <script src="/list.js"></script>
</body>
</html>


* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

#map {
    width: 50%;
    height: 100vh;
}


// Initialize and add the map
let map;

async function initMap() {
  // The location of Uluru
  const position = { lat: -25.344, lng: 131.031 };
  // Request needed libraries.
  //@ts-ignore
  const { Map } = await google.maps.importLibrary("maps");
  const { AdvancedMarkerView } = await google.maps.importLibrary("marker");

  // The map, centered at Uluru
  map = new Map(document.getElementById("map"), {
    zoom: 4,
    center: position,
    disableDefaultUI: true,
  });

}

initMap();

const mapRun = document.getElementById("map");

const URL = "https://maps.googleapis.com/maps/api/directions/json";
const xhr = new XMLHttpRequest();

xhr.open("GET", URL);

xhr.responseType = "json";
xhr.send();

xhr.onload = function () {
    const otvet = xhr.response;
    mapMask(mapRun);
    mapMaskTwo();
};

function mapMask(jsonObj) {
  const mapRun = document.getElementById("map");
  mapRun.textContent = jsonObj["origin", "destination"];
  mapRun.appendChild(mapRun);
}
  • Вопрос задан
  • 64 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 1
trapwalker
@trapwalker
Программист, энтузиаст
А что конкретно вам не понятно в официальной документации?
https://developers.google.com/maps/documentation/routes
Вопрос у вас звучит "не понимаю как сделать задачу" полностью, вообще. Тут нужно задавать конкретные вопросы, а не общие абастрактные. Иначе не понятно что вам требуется, курс по программированию, или сделать проект за вас.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Diamond Personnel R&C Москва
До 110 000 ₽
DigitalHR Москва
от 130 000 до 180 000 ₽
DigitalHR Ереван
от 1 500 до 3 000 $