使用Django框架開發網站的過程中,常會使用JSON數據接口來實現與前端的數據交互。本文將介紹如何使用Django開發JSON數據接口,并調用API獲取數據。
首先,在Django中需要安裝Django REST framework,該框架提供了一個簡潔的路由系統和處理請求的視圖函數,方便我們開發API接口。安裝方法為:
pip install djangorestframework接著,在settings.py文件中注冊REST framework:
INSTALLED_APPS = [ ... 'rest_framework', ... ]注冊完畢后,在views.py文件中編寫視圖函數。以下是獲取用戶列表的例子:
from django.contrib.auth.models import User from django.http import JsonResponse def user_list(request): users = User.objects.all() data = { 'users': list(users.values('username', 'email')) } return JsonResponse(data)解釋一下這個視圖函數的代碼。首先,我們導入Django的User模型,然后在函數中查詢出所有用戶,并將用戶名和郵箱存放在data中。最后,我們調用JsonResponse發送數據。 其中,JsonResponse需要傳入一個字典對象。我們使用Django QuerySet對象的values方法來獲取查詢結果,value參數傳入需要查詢的字段。這里我們只查詢了用戶名和郵箱字段,因此在JsonResponse返回的數據中也只包含了這兩個字段。 接下來,編寫URL路由:
from django.urls import path from . import views urlpatterns = [ path('users/', views.user_list, name='user_list'), ]以上例子我們將URL設置為/users/,調用user_list視圖函數。 最后,我們可以使用瀏覽器訪問該接口:
http://localhost:8000/users/如果一切正常,我們可以得到如下JSON數據:
{ "users": [ { "username": "user1", "email": "user1@example.com" }, { "username": "user2", "email": "user2@example.com" }, ... ] }至此,我們通過Django開發了一個簡單的JSON數據接口,并成功獲取了數據。在實際開發中,我們可以使用類視圖來處理請求,也可以返回錯誤碼和錯誤消息等增強功能。
上一篇django開發json
下一篇vue中文版本