2

我知道这个问题已经被问到并得到了回答,但它对我没有帮助。

这是我的 jQuery 代码:

var gmapsurl = 'http://maps.googleapis.com/maps/api/distancematrix/json?'+
                            'origins='+addr_origin+
                            '&destinations='+addr_destination+
                            '&mode=driving&language=hu&units=metric'+
                            '&key='+mykey+
                            '&sensor=false';
$.getJSON(gmapsurl, function(data) {
    alert( 'OK' );
});

现在我Origin (my site url) is not allowed by Access-Control-Allow-Origin.在浏览器中收到错误消息。但是如果我直接将这个 url 写入浏览器,那么我会得到一个 JSON 结构。

我怎样才能解决这个问题?

4

1 回答 1

12

您应该使用 Google Maps API 进行地理编码:

var geocoder = new google.maps.Geocoder();
var geocoderRequest = { address: "MountainView, CA" };
geocoder.geocode(geocoderRequest, function(results, status){
//do your result related activities here, maybe push the coordinates to the backend for later use, etc.
});

而不是通过 JSON 调用服务。当然,您应该在脚本中包含此内容以使用 Google Maps API:

<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
于 2012-12-10T18:37:45.573 回答