Django 中的JsonResponse 和 json区别

from django.http import JsonResponse
JsonResponse  里面代码会加这一个响应头 kwargs.setdefault('content_type', 'application/json') 告诉浏览器发送的是一个json字符串,不需要在进行 JSON.parse ;
return JsonResponse({"msg":"ok!"})  ----> 返回到ajax里面 这个直接就是一个对象了,不需要在进行 JSON.parse;

注意:
  JsonResponse 如果传递不是一个字典类型,这时候会报  In order to allow non-dict objects to be serialized set the ''safe parameter to False   
  ret = list(models.Comment.objects.filter(article_id=article_id).values("nid","content","parent_comment_id","user__username")) #传递是一个list 
  print(ret)
  return JsonResponse(ret,safe=False) #必须要加safe=False,不然会报'In order to allow non-dict objects to be serialized set the ''safe parameter to False.'


json 需要进行 JSON.parse
原文地址:https://www.cnblogs.com/ajaxa/p/10406645.html