0

我正在尝试对 Google Maps Distance Matrix API 进行 jQuery $.ajax 调用,但由于跨域安全问题,这不起作用。

我正在使用以下 ajax 调用:

$.ajax({
         url: 
    'https://maps.googleapis.com/maps/api/distancematrix/json?units=imperial&origins='+start+'&destinations='+end+'&key=MY_KEY',
         dataType: 'json',
         cache: false,
         crossDomain: true,
         success: function(data) {
           console.log(data);
         }.bind(this),      
         error: function(xhr, status, err) {
           console.error('https://maps.googleapis.com/maps/api/distancematrix/json?units=imperial&origins='+start+'&destinations='+end+'&key=MY_KEY', status, err.toString());
         }.bind(this)
       });

我收到以下错误:

跨域请求被阻止:同源策略不允许在https://maps.googleapis.com/maps/api/distancematrix/json?units=imperial&origins=delhi&destinations=jaipur&key=MY_KEY读取远程资源。(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)。

我已经阅读了几乎所有可能的解决方案来解决这个问题。甚至尝试更改数据类型:'jsonp',但它对我不起作用。在将数据类型更改为“jsonp”时,我收到以下解析错误。

parsererror 错误:未调用 jQuery18208230966408134822_1475687832399

有人可以帮我解决它。谢谢。

4

0 回答 0