响应解析器错误



这是对我的web服务的跨域AJAX请求。

$(document).ready(function(){
                    $.ajax({
                  url: 'http://storage.loc/api/getowners/?host=http://www.mail.ru/&callback=parseJSON',
                  dataType: 'jsonp',
                  crossDomain: true,
                  type: 'GET',
                  jsonp: false,
                  jsonCallback: 'parseJSON',
                  error: function(){
                      alert('Error');
                  },
                  complete: function(jqXHR, textStatus){
                      alert(textStatus);
                  }
                  });
                });
        function parseJSON(data)
        {
            var links = [];
            $.each(data.users, function(key,value) {
                links.push = '<a href="#" id="'+value+'"onClick="getData(this)">'+value+'</a><br />';   
            });
        }

响应是:

parseJSON({"users":{"user0":"rulezz87","user1":"karazyab"}})

响应似乎是正确的,但textStatus是"parsererror"和数组在parseJSON()是空的。我不是jQuery专业人员,所以你能告诉我,我做错了什么吗?

响应不正确,因为用户列表不是数组。它应该是这样的:

{ "users" : [ {"user0" : "rulezz87"}, {"user1" : "karazyab"} ] }

所以,错误消息是正确的,它也不能从JSON解析的事实。

相关内容

  • 没有找到相关文章

最新更新