1新建django項目名為json_ajax,應用名為app,在templates模板中新建ajax.html文件
ajax.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax</title> {% load staticfiles %} <script type="text/javascript" src="{% static 'js/jquery-3.3.1.min.js' %}"></script> </head> <body> <button id="send">發送</button> <script> $("#send").click(function () { {#json數據#} var post_data={ "name":"weihu", }; $.ajax({ url:"http://127.0.0.1:8000/ajax", type:"POST", {#發送json數據到服務器#} data:post_data, {#請求成功回調函數#} success:function (data) { alert(data) alert("請求成功") }, {#請求失敗回調函數#} error:function () { alert("服務器請求超時,請重試!") } }); }); </script> </body> </html>
2.在settings配置文件中,注釋
# 'django.middleware.csrf.CsrfViewMiddleware',
STATIC_URL = '/static/' STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ]
3.在urls.py文件中,配置path路徑
"""json_ajax URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/2.0/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: path('', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin from django.urls import path from app import views urlpatterns = [ path('admin/', admin.site.urls), path('test',views.test), path('ajax',views.ajax), ]
4.在views.py中,實現邏輯代碼
from django.shortcuts import render,HttpResponse import json def test(request): return render(request,'ajax.html') def ajax(request): if request.method=="POST": name=request.POST.get('name') print("ok") status=1 result="sucuss" return HttpResponse(json.dumps({ "status":status, "result":result, "name":name }))
