我发出ajax请求:
$.ajax({
url: "http://api.forismatic.com/api/1.0/?method=getQuote&format=json&lang=en&jsoncallback=?",
dataType: 'json'
});
并收到错误:
SyntaxError:意外的令牌:
当我在开发工具中点击该错误时,我看到这样一个对我来说非常好的对象:
{
"quoteText":"Reality leaves a lot to the imagination. ",
"quoteAuthor":"John Lennon",
"senderName":"",
"senderLink":"",
"quoteLink":"http://forismatic.com/en/9dceb1ebf1/"
}
问题出在哪里?我无法找到解决方案。
答案 0 :(得分:0)
在URL中放置=?
会覆盖dataType
,并告诉jQuery发出JSON请求而不是XHR请求。
您请求的URL返回JSON,而不是JSONP,因此您会收到错误。
从网址中删除&jsoncallback=?
。
然后您将收到此错误:
XMLHttpRequest无法加载http://api.forismatic.com/api/1.0/?method=getQuote&format=json&lang=en&js。请求的资源上没有“Access-Control-Allow-Origin”标头。
......解释in this question。