先来介绍下django
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。
然后百度下django的官方文档,首先映入眼帘的是下面这句话
Django makes it easier to build better Web apps more quickly and with less code.
大致意思是django是用更少的代码简单快速搭建web应用
那么什么是restful呢?
REST全称是Representational State Transfer,REST指的是一组架构约束条件和原则。" 如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构。
基于restful的http请求CURD
- ->Create post
- ->Update put
- ->Read get
- ->Delete delete
我们这里掠过django的orm操作
直接上url与类视图
跟着我的步骤走
Step1 python manage.py startapp demo
Step2 进入demo的views.py引入下边的包
from django.views import View
from django.http import JsonResponse,QueryDict
from django.views.decorators.csrf import csrf_exempt
class RestApi(View):
@csrf_exempt
def dispatch(self, request, *args, **kwargs):
if request.method.lower() in self.http_method_names:
handler = getattr(self, request.method.lower(), self.http_method_not_allowed)
else:
handler = self.http_method_not_allowed
return handler(request, *args, **kwargs)
def get(self,request):
value = request.GET.get("value","")
return JsonResponse({"status":200,"data":"这是GET请求"})
def post(self,request):
value = request.POST.get("value", "")
return JsonResponse({"status":200,"data":"这是POST请求"})
def put(self,request):
values = QueryDict(request.body)
return JsonResponse({"status":200,"data":"这是PUT请求"})
def delete(self,request):
values = QueryDict(request.body)
return JsonResponse({"status":200,"data":"这是DELETE请求"})
Url规划 计划采用多级路由
子路由urls.py代码
from django.urls import path
from demo.views import RestApi
urlpatterns = [
path('rest_api/', RestApi.as_view()),
]
附上:http 状态码
2XX 200请求成功
3XX 301 302 重定向
4XX 404 找不到页面 403 fordiden 拒绝访问
5XX 500 服务器内部错误 502 bad gateway 服务器网关错误