Django之JsonResponse

JsonResponse 对象:html

class JsonResponse(data, encoder=DjangoJSONEncoder, safe=True, json_dumps_params=None,**kwargs)ajax

这个类是HttpRespon的子类,它主要和父类的区别在于:django

1.它的默认Content-Type 被设置为: application/jsonjson

2.第一个参数,data应该是一个字典类型,当 safe 这个参数被设置为:False ,那data能够填入任何能被转换为JSON格式的对象,好比list, tuple, set。 默认的safe 参数是 True. 若是你传入的data数据类型不是字典类型,那么它就会抛出 TypeError的异常。app

3.json_dumps_params参数是一个字典,它将调用json.dumps()方法并将字典中的参数传入给该方法。spa

 

#若是这样返回,ajax还须要进行json解析
#views.py
return HttpResponse(json.dumps({"msg":"ok!"})) #index.html var data=json.parse(data)
console.log(data.msg);
#若是这样返回,两边都不须要进行json的序列化与反序列化,ajax接受的直接是一个对象
#views.py
from django.http import JsonResponse return JsonResponse({"msg":"ok!"}) #index.html console.log(data.msg);
相关文章
相关标签/搜索