介绍
今天就跟大家聊聊有关怎么在Django中返回json数据,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
<强>方法一:使用Python的json包强>
得到django.shortcuts import HttpResponse import json def testjson(请求): ,data=https://www.yisu.com/zixun/{ “patient_name”:“张三”, “年龄”:“25”, “patient_id”:“19000347”, “诊断”:“上呼吸道感染的, } 返回HttpResponse (json.dumps(数据)
我们暂且把数据看成是从数据库取出来的数据,使用浏览器访问一下testjson
def testjson(请求): ,data=https://www.yisu.com/zixun/{ “patient_name”:“张三”, “年龄”:“25”, “patient_id”:“19000347”, “诊断”:“上呼吸道感染的, } 返回HttpResponse (json.dumps(数据),content_type=application/json)
再访问网页:
def testjson(请求): ,data=https://www.yisu.com/zixun/{ “patient_name”:“张三”, “年龄”:“25”, “patient_id”:“19000347”, “诊断”:“上呼吸道感染的, } 返回JsonResponse(数据)
访问网页:
<强> JsonResponse的源码强>
class JsonResponse (HttpResponse): “才能”;“ An 才能HTTP response  class that consumes data 用be serialized 用JSON。 :才能param 数据:,Data 用be dumped into json只By default only “dict的对象 ,,断开连接,allowed 用be passed due 用a security flaw before EcmaScript 5只看到 ”,,,“安全”,parameter for more 信息。 :才能param 编码器:,Should be a json encoder 类只Defaults ”,,“django.core.serializers.json.DjangoJSONEncoder’”。 :才能param 安全:,Controls if only “dict ' ', objects may be 序列化只违约 ,,用' '真实的' '。 :才能param json_dumps_params:, A dictionary of kwargs passed 用json.dumps ()。 “才能”;“ def __init__(才能自我,,数据,编码器=DjangoJSONEncoder,安全=True, ,,,,,,,,json_dumps_params=没有,,* * kwargs): ,,,if safe 以及not isinstance(数据,dict类型): ,,,,,raise TypeError ( ,,,,,,,& # 39;拷贝order 用allow non-dict objects 用be serialized set 从而& # 39; ,,,,,,,& # 39;safe parameter 用假强生# 39; ,,,,,) ,,,if json_dumps_params is 没有: ,,,,,json_dumps_params =, {} ,,,kwargs.setdefault (& # 39; content_type& # 39;,, & # 39; application/json # 39;) ,,,data =, json.dumps(数据,cls=编码器,* * json_dumps_params) ,,,超级(). __init__(内容=数据,* * kwargs)
其内部也是通过json。转储来把数据转换为JSON的,其还可以转换为列表类型。我们再来改一下testjson
def testjson(请求): listdata =,(“张三,,,“25“,,,19000347,,,,上呼吸道感染“) return JsonResponse (listdata)怎么在Django中返回json数据