Django视图发送带有正确头部的空响应
我在Dreamhost服务器上有一个Django项目,这个项目有几个视图会返回Json格式的响应。昨天,我把这个Django项目从本地机器(localhost)迁移到了运行Apache的Dreamhost服务器上。现在,当我通过jQuery调用我的Django视图,访问
http://www.abc.com/projects/
本来应该返回我在mongodb数据库中的所有项目,但结果却是:
在Firefox上 - 只返回了头部信息,没有响应内容。
Connection Keep-Alive
Content-Type application/json
Date Thu, 19 Jan 2012 09:03:34 GMT
Keep-Alive timeout=2, max=100
Server Apache
Status 200 OK
Transfer-Encoding chunked
在Chrome上 - 没有头部信息和响应数据,出现了一个错误:
XMLHttpRequest cannot load http://abc.com/Projects/. Origin null is not allowed by Access-Control-Allow-Origin.**
如果我直接通过网页浏览器访问http://www.abc.com/projects/,它会以json格式返回结果,但如果我使用JavaScript/jQuery就不行。
之前我在本地机器上使用了这个中间件,允许其他域名请求并获取响应,但现在在Apache服务器上运行时,这个中间件就不工作了,所以我把它从Settings.py文件中删除了。
我不知道为什么会出现这个错误。请帮帮我。
*编辑*
根据@burhan的建议,我在客户端使用了jsonp,现在我的服务器返回了json,但浏览器在解析之前就报错了。错误是:意外的标记。
我收到的JSON回复是:
{"projects": [{"projectName": "carmella", "projectId": "4f13c7475fcff30710000000"}, {"projectName": "SeaMonkey", "projectId": "4f1677b75fcff37c03000001"}]}