在 Django 中,我們可以通過 JSON 格式化輸出來將數據轉換為 JSON 格式并返回給前端。這在前后端分離的開發模式中非常常見。
要在 Django 視圖函數中輸出 JSON 格式的數據,我們可以使用JsonResponse
。這個類可以將 Python 字典或者列表轉換為 JSON 格式,并將其作為 HTTP 響應返回。
from django.http import JsonResponse def my_view(request): data = {'foo': 'bar'} return JsonResponse(data)
或者,如果你已經有了一個 JSON 格式的字符串,可以直接用JsonResponse
返回:
from django.http import JsonResponse def my_view(request): json_str = '{"foo": "bar"}' return JsonResponse(json_str, safe=False)
在這個例子中,我們把safe
參數設置成了False
。這是因為我們傳遞給JsonResponse
的數據已經是 JSON 格式的字符串,而不是 Python 字典或者列表。
在使用JsonResponse
輸出 JSON 格式數據時,你還可以設置content_type
參數來指定返回的 HTTP 響應的 Content-Type 頭:
from django.http import JsonResponse def my_view(request): data = {'foo': 'bar'} return JsonResponse(data, content_type='application/json; charset=utf-8')
除了使用JsonResponse
,我們還可以使用 Django 的json
模塊來將 Python 對象轉換為 JSON 格式:
import json from django.http import HttpResponse def my_view(request): data = {'foo': 'bar'} json_str = json.dumps(data) return HttpResponse(json_str, content_type="application/json")
以上就是 Django 中輸出 JSON 格式數據的方法。
上一篇vue中prop屬性
下一篇nginx轉發vue項目