问题与json Uncaught SyntaxError: Unexpected token :和JSONP request returning error: "Uncaught SyntaxError: Unexpected token :"
非常相似我试图打电话来获取Divvy数据。我使用JSONP是因为我不想将服务器用于这个简单的前端应用程序。
$.ajax({
type: "GET",
url: 'http://divvybikes.com/stations/json',
dataType: "jsonp",
jsonp: "jsonp",
jsonpCallback: "handleData",
success: function(){
}
});
但是,Chrome会通过“Uncaught SyntaxError:Unexpected token:”
保持警报网址http://divvybikes.com/stations/json单独在浏览器中运行良好。 此外,状态代码始终为200.
有人可以帮忙吗?
答案 0 :(得分:1)
我猜你已经省略了一些代码。
首先,当Chrome为您提供该错误时,您可以在控制台窗口中单击它,它将显示错误被抛出的确切行。
此外,您的代码似乎比它需要的更冗长。
$.ajax({
type: "GET",
dataType: "jsonp",
url: "http://divvybikes.com/stations/json",
success: function (data) {
console.log(data);
}
});
答案 1 :(得分:0)
返回类型应为JSONP,但其当前返回的JSON
例如
//JSON
{"name":"abc","id":0}
//JSONP format
func({"name":"def","id":1});
还确保返回的JSON有效。
答案 2 :(得分:-2)
复制返回的json。 打开http://jsonlint.com/
将整个json粘贴到那里并验证。 您可能会发现json返回的问题。 做到这一点,然后再试一次