在我解释我的问题之前我想提一下我在jsonp
上的天真。这实际上是我第一次尝试与JSONP
合作。JSONP - “未捕获的SyntaxError:意外的令牌”
即时通讯使用jquery ajax调用从网站撤回数据。
我的jQuery代码如下
$.fn.checkTPS = function(){
return this.each(function(){
var interval;
$(this).on('keyup', function() {
var api_key = 'asdfasfsadfsadfsad';
var format = 'json';
var username = '[email protected]';
var self = $(this);
var selfValue;
var feedback = $('.tps-feedback');
if(interval === undefined){
interval = setInterval(function(){
if(selfValue !== self.val()) {
selfValue = self.val();
if (selfValue.length > 9){
$.ajax({
url: 'https://www.selectabase.co.uk/api/v1/tps/' + selfValue + '/',
type: 'get',
dataType: 'jsonp',
data: {
format: format,
username: username,
api_key: api_key
},
success: function(data) {
console.log(data);
},
error: function() {
},
jsonp: 'jsonp'
});
}
}
},3000);
}
});
});
};
我想从selectabase.co.uk
适应的服务,据他们说,这是我应该如何使用这项服务https://www.selectabase.co.uk/api/v1/tps/[number]/?format=json&username=[username]&api_key=[api key]
当我使用AJAX我得到这个请求发送错误Uncaught SyntaxError: Unexpected token :
和点击时,这打开了 {"ctps": false, "number": "1452500705", "resource_uri": "/api/v1/tps/01452500705/", "tps": false}
通过这个我想要的方式,但不知道这是什么错误是unexpected token :
我已经复制从检查元素选项卡下面的链接(你可以看到下面的图片),我认为这是一个已经被JSON https://www.selectabase.co.uk/api/v1/tps/01452500705/?jsonp=jQuery17102731868715648129_14120077325500&format=json&username=dame40example.co.uk&api_key=asdfasfsadfsadfsad&_=14120077325500
产生我在铬复制从inspect element > source tab
下面的链接调用..我想我应该添加一个图像来正确描述这个json数据和链接的拷贝。
我希望我已经设法跨越传达我的消息......如果你有任何想法,我需要什么补充...关心
服务器正在发回JSON,而不是JSONP。那就是问题所在。 – 2014-09-29 17:09:26
http://stackoverflow.com/questions/17406990/the-uncaught-syntaxerror-unexpected-token-in-jsonp,http://stackoverflow.com/a/19166256/2864740 – user2864740 2014-09-29 17:11:00
但如果我使用'dataType:' json''浏览器dosent发送请求到那个URL – Sharif 2014-09-29 17:11:11