2010-06-26 130 views
2

我使用jQuery来获取和使用Flickr的例子服务解析JSON:如果我使用的Flickr网址http://api.jquery.com/jQuery.getJSON/.getJSON()返回null

一切正常,当我试图让自己的服务问题开始。

它工作时,我保存输出并从文件中读取,但我不从服务器的URL工作。萤火显示了两个对象是空这是显而易见的,但它也显示了这样的事情:

GET http://myurl.xx 200 OK 107ms 


Date Sat, 26 Jun 2010 10:24:08 GMT 
Server Apache/2 
X-Powered-By PHP/5.2.10 
Set-Cookie SESS1faf247ad9843d9dd296b3673ae414f3=1e90f24286485ce326718211ed258733; expires=Mon, 19-Jul-2010 13:57:28 GMT; path=/; domain=.myrul.xx 
Expires Sun, 19 Nov 1978 05:00:00 GMT 
Last-Modified Sat, 26 Jun 2010 10:24:08 GMT 
Cache-Control store, no-cache, must-revalidate, post-check=0, pre-check=0 
Vary Accept-Encoding,User-Agent 
Content-Encoding gzip 
Content-Length 1167 
Keep-Alive timeout=1, max=100 
Connection Keep-Alive 
Content-Type text/javascript; charset=utf-8 


Request headers 


Host myurl.xx 
User-Agent Mozilla/5.0 (Windows; U; Windows NT 6.1; pl; rv:1.9.2.4) Gecko/20100611 Firefox/3.6.4 (.NET CLR 3.5.30729; .NET4.0E) 
Accept application/json, text/javascript, */* 
Accept-Language pl,en-us;q=0.7,en;q=0.3 
Accept-Encoding gzip,deflate 
Accept-Charset ISO-8859-2,utf-8;q=0.7,*;q=0.7 
Keep-Alive 115 
Connection keep-alive 
Origin null 

我已经改变了网址:myrul.xx但我用有效的URL。

这可能是导致该结果的原因?

例如我tryed说(我不使用任何查询字符串):

$.getJSON('http://mysite.com', function (jd) { 
    $.each(jd, function (index, value) { 
     $('#stage').append('<p>' + value.title + '</p>'); 
     $('#stage').append('<img src=\'' + value.picture + '\'></p>'); 
     $('#stage').append('<p><a href=\'' + value.url + '\'>url</a></p>'); 
     $('#stage').append('<hr/>'); 
    }); 
}); 
+1

你自己的服务肯定会发回格式良好的JSON编码数据吗? – TheDeadMedic 2010-06-26 10:43:16

+1

你可以发布你正在使用的代码,特别是URL /查询字符串吗?用“mysite.net”替换域名是可以的,我们需要知道它是否与执行请求的页面相同,如果不是,你的查询字符串是什么样的。 – 2010-06-26 10:43:53

+0

是的,我的服务发送有效的JSON数据,我使用两个不同的站点验证了它的结果,这些站点也使用jQuery,所以我在我的最后做了错误的事情。 – Jacob 2010-06-26 14:39:17

回答