2016-12-05 3 views
2

Я пытаюсь использовать матрицу расстояний google, чтобы узнать расстояние и время от одного источника до одного пункта назначения.google distance matrix на localhost

Я звоню функцию

$('#postCode').change(function() { 
    var address = "sydney"; 
    var source = "melbourne" 
    var url = "https://maps.googleapis.com/maps/api/distancematrix/js?units=imperial&origins=" + address + "&destinations=" + source + "&key=MYKEY_HERE"; 
    $.get(url, function (data) { 
     window.alert(data); 
    }); 
}); 

Мне просто нужно, чтобы получить все данные возвращаются, но проблема в том, когда я загрузить страницу, которая имеет связь

<script src="https://maps.google.com/maps/api/js?sensor=false?key=MYKEY_HERE"></script> 

или вызвать изменение поле postcode, оно показывает в консоли следующие 2 ошибки

  • Google Maps API erro r: MissingKeyMapError

  • Нет заголовка «Access-Control-Allow-Origin» на запрошенном ресурсе
    . Origin 'http://localhost:60197' поэтому не допускается
    доступ.

Есть два предупреждения, а

util.js: 210 Google Maps API предупреждения: NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys

util.js: 210 Google Maps API предупреждения: SensorNotRequired https://developers.google.com/maps/documentation/javascript/error-messages#sensor-not-required

Что я делаю неправильно, или каков правильный способ достижения требуемого результата (расстояние и время между двумя точками).

ответ

1

Не используйте DistanceMatrix web service с javascript на клиенте, используйте Google Maps Javascript API v3 DistanceMatrix Service.

$('#postCode').change(function() { 
    var address = "sydney"; 
    var source = "melbourne" 
var service = new google.maps.DistanceMatrixService(); 
service.getDistanceMatrix(
    { 
    origins: [address], 
    destinations: [source], 
    travelMode: 'DRIVING', 
    unitSystem: google.maps.UnitSystem.IMPERIAL, 
    }, callback); 

function callback(response, status) { 
    // See Parsing the Results for 
    // the basics of a callback function. 
} 

});

+0

где я могу поставить ключ api? – Novice

+0

В [API Javascript для Google Maps v3 include] (https://developers.google.com/maps/documentation/javascript/get-api-key), как вы уже указывали, вы уже делаете. – geocodezip

+0

еще не существует две ошибки и два предупреждения предупреждения: нет API ключи предупреждения: датчик не требуется ошибка: отсутствует KEYMAP ошибки: эта служба требует API ключа – Novice