1

我收到错误:Uncaught SyntaxError: Unexpected token <

我只是在使用 Google Trend URL 时遇到这个问题。其他 URL 工作正常。

function ajaxfun(){

  $.ajax({
    type: 'GET',
    url: 'http://www.google.com/trends/fetchComponent?content=1&hl=en-US&q=fever&cid=TIMESERIES_GRAPH_0&export=3&US&cat=0-45', 
    dataType :"jsonp",
    jsonp: false,
    crossDomain: true,
    error: function(data) {
      console.log('error', data);
    },
    success: function(data) {
      console.log('success', data);
    },
    complete: function() {
      console.log('done');
    }
  });
}
4

2 回答 2

1

您实际上并没有收到 json 对象。它说,

<div id="report">
<div class="timeBandTitle">An error has been detected</div>
<div class="timeBandSubTitle">This page is currently unavailable. Please try again later.<br/> Please make sure your query is valid and try again.<br/> If you're experiencing long delays, consider reducing your comparison items.<br/> Thanks for your patience.</div>

使用开发者工具演示 检查并在网络选项卡中查看。

于 2013-03-29T12:23:10.907 回答
0

默认情况下,jQuery 通过&_={timestamp}在 url 末尾附加来防止缓存 jsonp。它会导致错误。添加cache:true以防止它。

于 2013-03-29T12:30:18.127 回答