-1

我做了这个ajax调用:

$.ajax({
//query rest che trova tutti gli amici dell'utente corrente        
type: 'GET',
async: false,


url: "http://www.timeapi.org/utc/now",

success: function(data) {

  time_now=data;

    },
    error: function(data) {

      console.log("ko" );
    }


}); 

在 chrome 中完美运行,但在 Firefox 和移动 android 中会出现错误回调。
在Firefox中,错误是(用红色写的): GET ' http://www.timeapi.org/utc/now.json 200 OK

4

1 回答 1

1

此服务器必须是旧的,它没有设置任何跨域授权标头。

但幸运的是,主页解释了它与 JSONP 兼容并举了一个例子:

<script type="text/javascript">
  function myCallback(json) {
    alert(new Date(json.dateString));
  }
</script>
<script type="text/javascript" src="http://timeapi.org/utc/now.json?callback=myCallback"></script>

您还可以调整您的代码:

$.ajax({
    type: 'GET',
    dataType: "jsonp",
    url: "http://www.timeapi.org/utc/now.json?callback=?",
    success: function(data) {
     time_now=data.dateString;
    },
    error: function(data) {
      console.log("ko" );
    }
}); 

另请注意,我删除了async:false. 它不仅与 JSONP 不兼容,而且总是一个坏主意。

于 2013-09-13T11:21:55.377 回答