REST API для того, чтобы проехать расстояние?

Существует ли сервис, который даст мне ведущее расстояние между двумя адресами? По-видимому Google Maps API требует, чтобы Вы отобразили карту, которую я не хочу делать (на той конкретной странице), и я хотел бы просто поймать данные и сохранить ее к моему DB после того, как пользователь отправляет форму, вместо того, чтобы ожидать JS, чтобы сделать это - вещь.


Если это релевантно, это входит в приложение Django. Я обнаружил, что CloudMade предлагает API Python, который хорош, кроме их последнего dev, выпуск имеет ошибку в нем (не может использовать объект API), но что еще более важно, это - поддержка Канады, ужасно (не мог найти направления ни из какого крупнейшего города здесь!).

11
задан mpen 7 June 2010 в 06:57
поделиться

5 ответов

Существуют бесплатные сервисы, но качество данных может быть сомнительным/отсутствовать в некоторых областях. Помните также о лицензиях на данные, хранение в собственной БД может быть нарушением.

http://openrouteservice.org/

2
ответ дан 3 December 2019 в 03:18
поделиться

Можно ли использовать объект Google Maps GDirections ? Это может возвращать текстовые направления вместо наложения карты, если вызывается с помощью объекта div. Оттуда вы можете использовать функции getDistance (или getDuration ). Вы всегда можете использовать невидимый div для возвратов, если не хотите, чтобы на странице отображалось что-либо.

Начать здесь
http://code.google.com/apis/maps/documentation/examples/directions-advanced.html
http://code.google.com/apis/maps/documentation/ reference.html # GDirections

И используйте этот пример кода

   var map;
    var directionsPanel;
    var directions;

    function initialize() {
      directionsPanel = document.getElementById("route");
      directions = new GDirections(null, directionsPanel);
      GEvent.addListener(directions , "load", onGDirectionsLoad);
      directions.load("from: 500 Memorial Drive, Cambridge, MA to: 4 Yawkey Way, Boston, MA 02215 (Fenway Park)");
    }

    function onGDirectionsLoad(){ 
      alert(directions.getDistance().html);
    }
3
ответ дан 3 December 2019 в 03:18
поделиться

Взгляните на Navteq. Примерно 5 лет назад я воспользовался их услугами при разработке приложения для проезда и получил хорошие результаты. Хотя в последнее время не могу говорить за них. Я считаю, что лучший URL-адрес - Navteq Routing Service

2
ответ дан 3 December 2019 в 03:18
поделиться

API направлений MapQuest основан на HTTP Querystring (я не уверен, полностью ли он RESTful). Может получить ответ в формате XML или JSON. Просто нужно отправить ему HTTP-запрос GET.

http://developer.mapquest.com/web/products/open/directions-service

Используйте параметр ответа «расстояние».

9
ответ дан 3 December 2019 в 03:18
поделиться

Вы можете использовать новый API Google Directions напрямую, без использования javascript. http://code.google.com/apis/maps/documentation/directions/

1
ответ дан 3 December 2019 в 03:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: