javascript – 如何使用django接收ajax请求?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何使用django接收ajax请求?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1754字,纯文字阅读大概需要3分钟。
内容图文
![javascript – 如何使用django接收ajax请求?](/upload/InfoBanner/zyjiaocheng/825/09ae9bc839514b9f8e1f63e1773f77ae.jpg)
我的模板上有以下JQuery Ajax请求,我希望传递给我的django视图,
function loginUser(){
$.ajax({
type:"POST",
url :"/login-user/",
data:"title=ajax call",
datatype:"json",
error:function(data){alert('Error:'+data);}
success:function(data){alert('OK!'+data.message+','+data.code);}
});
}
我的django视图看起来像这样:
def login_user(request):
print "garbage"
print request.GET['title']
return_dict = {'message': 'bla bla bla','code':324}
json=serialize("json",return_dict)
return HttpResponse(json, mimetype="application/x-javascript"
当我调用ajax函数时,我收到以下错误:
错误:[object XMLHttpRequest]
在django方面我得到以下错误:
Traceback (most recent call last):
File "c:\python26\lib\site-packages\django\core\servers\basehttp.py", line 281, in run
self.finish_response()
File "c:\python26\lib\site-packages\django\core\servers\basehttp.py", line 321, in finish_response
self.write(data)
File "c:\python26\lib\site-packages\django\core\servers\basehttp.py", line 417, in write
self._write(data)
File "c:\python26\lib\socket.py", line 297, in write
self.flush()
File "c:\python26\lib\socket.py", line 284, in flush
self._sock.sendall(buffer)
error: [Errno 10053] An established connection was aborted by the software in your host machine
我在这次电话会议中缺少什么?
迦特
解决方法:
我认为问题在于序列化字典.当我测试你的代码时,我编辑它看起来像这样,它工作:
from django.utils import simplejson
def login_users(request):
print "garbage"
print request.GET['title']
return_dict = {'message': 'bla bla bla','code':324}
json = simplejson.dumps(return_dict)
return HttpResponse(json, mimetype="application/x-javascript")
还要确保在GET查询字符串中传递title的值.我也碰到了(可能需要进行错误检查).如果您使用Firebug之类的工具,甚至是Webkit Inspector,它会有所帮助.这样您就可以查看Django从XHR请求返回的HTML错误页面.
内容总结
以上是互联网集市为您收集整理的javascript – 如何使用django接收ajax请求?全部内容,希望文章能够帮你解决javascript – 如何使用django接收ajax请求?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。