Javascript jQuery ajax jsonp调用始终获取意外的令牌错误

Javascript jQuery ajax jsonp调用始终获取意外的令牌错误,javascript,jquery,html,ajax,jsonp,Javascript,Jquery,Html,Ajax,Jsonp,我一直在为一些我认为很简单的事情浪费大量的时间,但是没有很好的例子来说明ajax调用是如何做的以及做了什么 这是我的javascript代码: $.ajax({ type: 'GET', url: 'https://maps.googleapis.com/maps/api/timezone/json', dataType: 'jsonp', data: { location: myLoc, timestamp: myTime, sensor: true }, succes

我一直在为一些我认为很简单的事情浪费大量的时间,但是没有很好的例子来说明ajax调用是如何做的以及做了什么

这是我的javascript代码:

$.ajax({
type: 'GET',
url: 'https://maps.googleapis.com/maps/api/timezone/json',
dataType: 'jsonp',
data: {
    location: myLoc,
    timestamp: myTime,
    sensor: true
},
success: function(){alert('OK');},
error: function(){alert('FAIL');}
})
}
变量“myLoc”和“myTime”不是问题所在。事实上,如果我将URI剪切并粘贴到我的浏览器中,它就可以正常工作并显示数据:

从我读到的内容来看,“callback”参数是自动生成的,代码应该足够智能,可以调用success函数或error函数

chrome返回的错误是“未捕获语法错误意外标记”:” 无论我尝试什么,javascript代码总是调用error函数。我添加了一个jsonpCallback参数(不起作用),json参数(不起作用),将数据类型更改为“json”(由于跨域错误而不起作用)


请提供帮助。

该api似乎不像您使用它的方式那样支持jsonp。关于如何将结果转化为变量,您有什么想法吗?首先,如果api支持jsonp,您必须弄清楚如何使它支持jsonp。否则,您将不得不求助于诸如YQL或服务器端代理之类的服务,并且该API不支持JSONP。它是由您的服务器而不是浏览器请求的。您是对的。。api不支持jsonp
$.ajax({
    type: 'GET',
    url: 'https://maps.googleapis.com/maps/api/timezone/json',
    dataType: 'jsonp',
    contentType: 'application/json; charset=utf-8',
    data: JSON.Stringify({
        location: myLoc,
        timestamp: myTime,
        sensor: true
    }),
    success: function(){alert('OK');},
    error: function(){alert('FAIL');}
});