Сервис открытых маршрутов - LRM

Я боролся с этим некоторое время, поэтому у меня есть два вопроса.

Первый вопрос: я не могу изменить профиль на открытой службе маршрута. мой код работает, когда я вставляю api-ключ в коде ниже.

var control;

function tests() {
    var control = L.Routing.control({
        waypoints: [ 
        L.latLng(coords),
        L.latLng(coords2)
        ],
    router: new L.Routing.openrouteservice('Api-Key'),
}).addTo(map);
document.getElementById("RouteButton").onclick = tests;
};

Но когда я пытаюсь изменить профиль, он либо не меняется, либо не получает сообщений об ошибках.

Вещи, которые я пробовал до сих пор.

  router: new L.Routing.openrouteservice({api_key:'HIDDEN', profile:'footwalking'),

а также

 router: new L.Routing.openrouteservice('https:// api.openrouteservice.org /directions? & api_key = Hidden& profile = foot-walking'),    

Первый работает, но профиль не меняется. Он по-прежнему использует профиль по умолчанию для вождения автомобиля.

Второй дает мне два сообщения об ошибках,

Первое сообщение об ошибке | Доступ к XMLHttpRequest по адресу https://api.openrouteservice.org/directions? из источника ' http://localhost:8000/' был заблокирован политикой CORS: в запрошенном ресурсе отсутствует заголовок 'Access-Control-Allow-Origin'. |

Второе сообщение об ошибке | corslite.js:87 ПОЛУЧИТЕ https://api.openrouteservice.org/directions? 403 (Запрещено) |

оба сообщения об ошибках выдают длинный URL, который был сокращен до https://api.openrouteservice.org/directions?.

Другой вопрос, который я получил, - как мне очистить карту, чтобы ранее нарисованный маршрут удалялся при рисовании нового маршрута. На картинке ниже вы можете увидеть, что происходит в тот момент, когда я запрашиваю второй маршрут, показанный как старый, так и новый.

два маршрута на одной карте

Надеюсь, вы, ребята, можете помочь.

0 ответов

Похоже, что плагин, который вы используете, имеет driving-car Профиль жестко закодирован, смотрите здесь:

https://github.com/willmorejg/lrm-openrouteservice/blob/master/lrm-openrouteservice/L.Routing.OpenRouteService.js#L171

Сможете ли вы открыть проблему в репозитории и попросить автора реализовать возможность добавлять пользовательские настройки профиля, такие как ходьба? Это должно работать тогда. Отвечает ли это на ваш вопрос? Удачи!

Open the L.Routing.OpenRouteService.js

Другие вопросы по тегам