使用jquery读取GOOLEAPI响应的问题

使用jquery读取GOOLEAPI响应的问题,jquery,web-services,Jquery,Web Services,我想使用jQuery函数获取web服务响应,但获取错误405,表示方法不允许。当我在web浏览器中复制粘贴相同的字符串时,我得到的xml结果没有错误。下面是我正在使用的代码 [ var arr= new Array(); var loopCounter = 0; alert("Before Ajax") $.ajax({ type: "GET", url: "http://maps.googleap

我想使用jQuery函数获取web服务响应,但获取错误405,表示方法不允许。当我在web浏览器中复制粘贴相同的字符串时,我得到的xml结果没有错误。下面是我正在使用的代码

[
 var arr= new Array();
        var loopCounter = 0;
        alert("Before Ajax")
        $.ajax({
            type: "GET",
            url: "http://maps.googleapis.com/maps/api/directions/xml?origin=ajax&destination=toronto&region=ca&avoid=tolls&sensor=false",
            dataType: "xml",
            success: function(xml) {
                alert("I am working");
                $(xml).find('distance').each(function() {
                    arr[loopCounter] = $(this).find('text').text();
                    alert("Some Value Of Distance = "+arr[loopCounter]);
                    loopCounter += 1;
                });

            }
        });]

这是由同源策略造成的,这意味着您只能使用Ajax获取具有相同来源(包括域、端口、协议)的url。

对于跨域请求,您需要使用JSONP:

如果URL包含字符串 “回调=?”(或类似定义 通过服务器端API),请求 而是作为JSONP处理。见 中jsonp数据类型的讨论 更多细节


您能解释一下吗?我是新来的,不知道如何解决这个问题。@molvi您可以阅读Google Maps的JavaScript API,了解如何在JS中使用该API: