下面是几种在Django中返回json数据的方法:
1. 使用 JsonResponse
JsonResponse 是 Django 提供的一个便捷类,用于返回 JSON 格式的响应。
from django.http import JsonResponse
def my_view(request):
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
return JsonResponse(data)
def my_view(request):
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
return JsonResponse(data)
2. 使用 HttpResponse 和 json.dumps
如果你需要更多的控制,可以使用 HttpResponse 结合 json.dumps 来返回 JSON 数据。
import json
from django.http import HttpResponse
def my_view(request):
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
return HttpResponse(json.dumps(data), content_type='application/json')
from django.http import HttpResponse
def my_view(request):
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
return HttpResponse(json.dumps(data), content_type='application/json')
3. 在 Django REST Framework (DRF) 中返回 JSON
如果你使用的是 Django REST Framework (DRF),你可以使用 Response 类来返回 JSON 数据。
from rest_framework.response import Response
from rest_framework.decorators import api_view
@api_view(['GET'])
def my_view(request):
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
return Response(data)
from rest_framework.decorators import api_view
@api_view(['GET'])
def my_view(request):
data = {
'name': 'John',
'age': 30,
'city': 'New York'
}
return Response(data)