107.JsonResponse

JsonResponse类:

用来dump字符串成json字符串,然后返回将json字符串封装成Response对象返回给浏览器,并且它的Content-Type是application/json。示例代码如下:

from django.http import HttpResponse, JsonResponse




def json_view(request):
    # 默认情况下,JsonResponse只能对字典进行dump,如果想要对非字典的数据进行dump,那么就需要JsonResponse传递一个safe=False参数
    person = {
        'username': '孤烟逐云',
        'age': 18,
        'height': 160,
    }
    # 1.第一种方式
    person_json = json.dump(person)
    <!--在将json对象包装成一个HttpResponse对象的时候,注意,一定要指定HttpResponse的的请求头的类型,不指定的话,默认为text/html。此时要指定为json: content_type='application/json'-->
    response = HttpResponse(person_json, content_type='application/json')
    
    # 2.第一种方式可以直接使用JsonResponse实现
    response = JsonResponse(person)
    return response
    
    # 3. 将非字典的字符串转换成json字符串
    <!--对非字典的数据进行dump,应该在使用HttpResponse的时候,传入一个safe=False参数,示例代码如下:-->
    person = '孤烟逐云'
    reponse1 = JsonResponse(person, safe=False)
    return response1
始于才华,忠于颜值;每件事情在成功之前,看起来都是天方夜谭。一无所有,就是无所不能。
原文地址:https://www.cnblogs.com/guyan-2020/p/12293281.html