###############   django框架-rest framework    ###############

# django rest framework 框架
# 为什么学习这个rest framework?
# 1,写代码的时候会用到,前后端分离的项目,可以帮助我们快速的写api,
# 2,面试的时候会问到, # 这个框架提供了一些什么功能?
# 1,权限组件,
# 2,认证组件
# 3,访问频率限制组件,
# 4,序列化,这个序列化是干什么的?把字符串序列化为json返回,
# 5,路由
# 6,视图,你写的rest framework继承过哪些类?这个学过了就知道了
# 7,分页
# 8,解析器,解析器干什么的?parse,vue发过来的请求,我要解析,根据头不同解析成不同的结果,
# 9,渲染器,渲染页面的,
# 10,版本,
# 这些就是序列化是用的最多的,分页也用的多,其他的比如权限这样的写一次就很少改动了, # django rest framework安装:
# 在pycharm中的terminal中执行命令:
# pip install djangorestframework # 这是一个app,注意app的注册在settings.py中

###############   restful协议    ###############

# restful协议
# REST与技术无关,代表的是一种软件架构风格
# 所有的数据,不管是通过网络获取的还是操作(增删改查)的数据,都是资源,将一切数据视为资源是REST区别与其他架构风格的最本质属性 # 1,HTTPs协议:
# API与用户的通信协议,总是使用HTTPs协议。https收费,但是更加的安全
# 2,域名:唯一的目的就是为了能一眼看到就是接口,可以不加,但是这是规范,
# 第一种:子域名方式
# https://api.example.com,这一种会存在跨域,浏览器有同源策略,
# 第二种:url方式,
# https://example.org/api/,这种便宜,
# 3,版本:
# URL,如:https://api.example.com/v1/
# https://example.org/api/v1/
# 4,路径:面向资源编程,写url的时候推荐使用名词,
# https://example.org/api/v1/名词/
# https://example.org/api/v1/order/
# 5,method,
# GET:获取资源(一项或多项)
# POST:新建一个资源
# PUT:更新资源(全部更新)
# PATCH:更新资源(局部更新)
# DELETE:删除资源
# 6,过滤,在url加条件,通过?号
# https://api.example.com/v1/zoos?page=2&per_page=100:指定第几页,以及每页的记录数
# 7,状态码+code:常用的状态码
# 200 OK - [GET]:服务器成功返回用户请求的数据
# 200系列表示成功
# 300系列表示重定向
# 404 NOT FOUND - [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作
# 400系列是客户端错误
# 500 INTERNAL SERVER ERROR - [*]:服务器发生错误,用户将无法判断发出的请求是否成功。
# 500系列是服务端错误,
# api需要返回状态码,但是我们通常使用code来做,因为只有状态码是不够用的,比如支付宝的状态码,可以参考看看,
# 所以需要状态码和code结合,
# 8,错误信息:
# api一定要返回错误信息,
# 9,返回请求的结果,
# 针对不同的操作,返回不同的结果,
# GET /order/ 返回所有的订单
# GET /order/1/ 返回单个订单
# POST /order/ 创建订单,如果前端需要,就返回创建的订单信息,不需要就不返回
# PUT /order/1/ 修改订单,全部
# PATCH /order/1/ 修改订单,局部
# DELETE /order/1/ 删除订单
# 10,Hypermedia API,RESTful API最好做到Hypermedia,即返回结果中提供链接,连向其他API方法,使得用户不查文档,也知道下一步应该做什么 # 上面就是所有的规范,但是我们可以不遵循,需要根据业务情况来选择是否遵循,

###############  结束线   ###############

rest framework-restful介绍-长期维护的更多相关文章

  1. django框架基础-框架介绍-长期维护

    ###############    MVC架构介绍    ################ # MVC架构 # 一个软件框架有很多的模块,每一个模块有不同的功能 # 模块与模块之间相互配合来完成软件 ...

  2. Django_rest framework 框架介绍

    restful介绍  restful协议 一切皆是资源,操作只是请求方式 URL 设计 原先的URL设计方式 在url 中体现出操作行为 /books/ books /books/add/ addbo ...

  3. django rest framework restful 规范

    内容回顾: . django请求生命周期 -> 执行遵循wsgi协议的模块(socket服务端) -> 中间件(路由匹配) -> 视图函数(业务处理:ORM.模板渲染) -> ...

  4. RESTful介绍和使用教程

    出自:https://blog.csdn.net/x541211190/article/details/81141459 一.REST起源REST(Representational State Tra ...

  5. Spring Framework简单介绍

    Spring Framework        学习java编程不知不觉已经三年时间了,開始的时候,总是喜欢看着视频,然后按部就班的敲打着键盘,每当系统正常执行后.心里乐开了花.最開始的时候,所有的代 ...

  6. 第三篇:RESTful介绍

    在介绍restful之前先放一张从之前文章评论里看到的图,我觉得它把soap和rest之间的一些区别形容地非常形象. 在第一篇和第二篇中我们也介绍过,soap协议传递的报文要基于xml格式的soap消 ...

  7. Django REST framework框架介绍和基本使用

    Django REST framework介绍 Django REST framework是基于Django实现的一个RESTful风格API框架,能够帮助我们快速开发RESTful风格的API. 官 ...

  8. python后端面试第七部分:项目部分--长期维护

    ##################    项目部分       ####################### 1,你怎么测试自己的代码的?自测 2,开发使用windows还是Linux,虚拟环境的 ...

  9. JBoss 系列十一:JBoss Cluster Framework Demo 介绍

    内容概要 JBoss Cluster Framework Demo包括JGruops.JBossCache.Infinispan,我们在随后的系列中会使用和运行这些示例来说明JGroups.JBoss ...

随机推荐

  1. 多源D点(邻接表+bfs)

    [问题]给出一颗n个结点的树,树上每条边的边权都是1,这n个结点中有m个特殊点,请你求出树上距离这m个特殊点距离均不超过d的点的数量,包含特殊点本身. 输入: 输入第一行包含三个正整数,n.m.d分别 ...

  2. Q2:Add Two Numbers

    2. Add Two Numbers 官方的链接:2. Add Two Numbers Description : You are given two non-empty linked lists r ...

  3. elastic启动脚本

    #!bin/bash export JAVA_HOME=/usr/java/jdk1.8.0_144 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH ...

  4. jquery鼠标键盘悬停事件,形变动画和淡入淡出

    鼠标和键盘悬停 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  5. day68-CSS-float浮动,clear清除浮动,overflow溢出

    1. float 浮动 1.1 在 CSS 中,任何元素都可以浮动. 1.2 浮动元素会生成一个块级框,而不论它本身是何种元素.内联标签设置浮动,就变成了块级标签. 1.3 关于浮动的两个特点: 浮动 ...

  6. DDL&DML

    SQL语言的DDL和DML DDL:数据定义语言它是用来定义 管理数据对象(数据库和数据表)的. create(创建),alter(修改),drop(删除) 一.创建数据库create datebas ...

  7. Python说文解字_defaultdict

    1. 这个构造函数需要一个函数作为参数,每当访问一个字典中不存在的键时,将会不带参数的调用这个函数,并将结果设定为默认值. 2. 众所周期,如果访问字典中不存在的键时,会引发KeyError异常. 其 ...

  8. solr集群的搭建

    solrCloud 昨天随手写了个solr单机版的搭建,今天准备写一个solr集群的搭建!1.solr集群只要环境配置正确还是比较简单的环境:CentOS-6.4-i386-bin-DVD1.isoj ...

  9. MVC的异步模式

    [小家Spring]高性能关键技术之---体验Spring MVC的异步模式(Callable.WebAsyncTask.DeferredResult) 基础使用篇 https://blog.csdn ...

  10. Mac系统下查看Android studio默认debug签名与正式签名的SHA1值

    https://blog.csdn.net/weixin_32364917/article/details/80095063 获取默认debug签名SHA1值方法,也可以直接打开系统的终端 输入: k ...