1. django rest framework框架的作用?

帮助开发者可以快速开发出遵循restful规范的API

2. django rest framework框架都有哪些组件(10)?

-版本
-权限
-认证
-节流
-分页
-解析器
-序列化(最重要)
-路由
-视图
-渲染器(把结果渲染到一个模板里)

3.为什么做前后端分离?

-分工明确,提高效率
-对于后端人员,主要为前端提供:API接口
以前的你的接口:
http://127.0.0.1:8000/index/
http://127.0.0.1:8000/users/
http://127.0.0.1:8000/add_users/
http://127.0.0.1:8000/del_users/
http://127.0.0.1:8000/edit_users/
restful 规范:
http://127.0.0.1:8000/users/
-同样的业务逻辑,能开发多个端口(app,网页端,ios端,微信小程序等),统一一套API接口,能适用于多个端口
-vue.js等框架编写前端时,会比之前写jQuery更简单快捷

4.什么是跨域?

-比如你访问百度,在百度js的ajax中携带一个京东的URL发送给你,由于浏览器的同源策略(同源是指域名,协议,端口相同),会进行阻隔,你接收不到页面内容

5.谈谈你对restful规范的理解(-->所有语言共用)

1. 使用https代替http(http通过socket收发数据是明文的,https是加密的,安全性高)
https://www.luffycity.com/course/detail/web/3
http://www.luffycity.com/course/detail/web/3 2. 在URL中体现自己写的是API
https://www.luffycity.com/api/
https://api.luffycity.com/ 可能会跨域 3. 在URL中体现版本 (旧版本和新版本都能体现出)
https://www.luffycity.com/api/v1/users
https://www.luffycity.com/api/v2/users 4. 名词(面向资源编程)
https://www.luffycity.com/api/v1/users
https://www.luffycity.com/api/v1/song 5. 行为
https://www.luffycity.com/api/v1/users
method:
get,获取
post,新建
put,更新
patch,局部更新
delete,删除
6. 条件 (分页等)
https://www.luffycity.com/api/v1/users?page=1
https://www.luffycity.com/api/v1/users?page=1&gender=2 7. 状态码
200
301
302
404
500
推荐使用code:
def xx(request):
ret = {'code':1000,'data':None}
try:
...
except Exptions as e:
ret['status'] = 1001
ret['error'] = 'xxxx错误' return JsonResponse(ret) 8. 错误信息
{
code:10001,
error:'用户名或密码错误'
} 9. 返回结果:
GET:
https://www.luffycity.com/api/v1/users
响应:
{
code: 1000,
data: [
{'name':'赵森','age':19},
{'name':'赵云','age':16},
{'name':'赵云','age':16},
{'name':'赵云','age':16},
{'name':'赵云','age':16},
]
}
GET:
https://www.luffycity.com/api/v1/users/1/
响应:
{
code:1000,
data:{'name':'赵森','age':19},
}
POST:
https://www.luffycity.com/api/v1/users
请求体:
{'name':'大表哥','age':19}
响应(不要):
{
code:1000,
data:{'id':9, 'name':'大表哥','age':19}
} PUT/PATCH:
https://www.luffycity.com/api/v1/users
请求体:
{'name':'大表哥','age':19}
响应(不要):
{
code:1000,
data:{'id':9, 'name':'大表哥','age':19}
} DELETE:
...
10. hyper link 访问:https://www.luffycity.com/api/v1/users
{
code:1000,
data:[
{'id':1,'name':'赵森','age':19, 'depart':https://www.luffycity.com/api/v1/depart/1/},
{'id':1,'name':'赵森','age':19, 'depart':https://www.luffycity.com/api/v1/depart/1/},
{'id':1,'name':'赵森','age':19, 'depart':https://www.luffycity.com/api/v1/depart/1/},
{'id':1,'name':'赵森','age':19, 'depart':https://www.luffycity.com/api/v1/depart/1/},
{'id':1,'name':'赵森','age':19, 'depart':https://www.luffycity.com/api/v1/depart/1/},
]
} https://www.luffycity.com/api/v1/users
{
code:1000,
data:[
{'id':1,'name':'赵森','age':19, 'depart_title':'公关部'},
{'id':1,'name':'赵森','age':19, 'depart_title':'公关部'},
{'id':1,'name':'赵森','age':19, 'depart_title':'公关部'},
{'id':1,'name':'赵森','age':19, 'depart_title':'公关部'},
{'id':1,'name':'赵森','age':19, 'depart_title':'公关部'},
]
}

 

  

Restframework框架总结及restful规范的更多相关文章

  1. restful规范和restframework框架

    什么是接口? 接口可以理解为url就是接口. 那么在其他语言里面接口也可以是约束类 restful规范是什么? RESTful是目前最流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展方便 ...

  2. Django框架(十七)-- CBV源码分析、restful规范、restframework框架

    一.CBV源码分析 1.url层的使用CBV from app01 import views url(r'book/',views.Book.as_view) 2.as_view方法 as_view是 ...

  3. Django框架(十八)—— CBV源码分析、restful规范、restframework框架

    目录 CBV源码分析.restful规范.restframework框架 一.CBV源码分析 1.url层的使用CBV 2.as_view方法 3.view方法 4.dispatch方法(可以在视图层 ...

  4. 一、restful规范 二、CBV(View)源代码执行流程 三、drf框架安装和简单使用

    一.restful规范 ''' 它是一个规范,面向资源架构 十条规范 1.API与用户的通讯协议,总是使用HTTPs协议,确保了网络传输的安全性 2.域名 --https://api.example. ...

  5. Django框架深入了解_01(Django请求生命周期、开发模式、cbv源码分析、restful规范、跨域、drf的安装及源码初识)

    一.Django请求生命周期: 前端发出请求到后端,通过Django处理.响应返回给前端相关结果的过程 先进入实现了wsgi协议的web服务器--->进入django中间件--->路由f分 ...

  6. 测开大佬告诉你:如何5分钟快速创建restful风格的API接口-使用django restframework框架

    一.思考❓❔ 1.创建API接口难吗? 软件测试工程师: 只测过API接口, 从没创建过 应该需要掌握一门后端开发语言和后端开发框架吧!? 脑容量有限,想想就可怕 2.如何创建API接口呢? 使用Dj ...

  7. 基于Django的Rest Framework框架的RESTful规范研究

    一.什么是RESTful规范 总的来说:RESTful规范就是一个非技术,人为约定的一个面向资源的架构理念. REST与技术无关,代表的是一种软件架构风格,REST是Representational ...

  8. DjangoRestFramework 学习之restful规范 APIview 解析器组件 Postman等

    DjangoRestFramework学习一之restful规范.APIview.解析器组件.Postman等 本节目录 一 预备知识 二 restful规范 三 DRF的APIView和解析器组件 ...

  9. day89 DjangoRsetFramework学习---restful规范,解析器组件,Postman等

     DjangoRsetFramework学习---restful规范,解析器组件,Postman等           本节目录 一 预备知识 二 restful规范 三 DRF的APIView和解析 ...

随机推荐

  1. nyoj 456——邮票分你一半——————【背包思想搜索】

    邮票分你一半 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述      小珂最近收集了些邮票,他想把其中的一些给他的好朋友小明.每张邮票上都有分值,他们想把这些邮票分 ...

  2. 分支结构case……end

    语法: case when 条件1 then 结果1 when 条件2 then 结果2 ……….. else 其它结果 end 执行顺序: 条件1成立执行结果1 条件2成立执行结果2 如果所有的wh ...

  3. python词频统计

    1.jieba 库 -中文分词库 words = jieba.lcut(str)  --->列表,词语 count = {} for word in words: if len(word)==1 ...

  4. 【学习笔记】String进阶:StringBuffer类(线程安全)和StringBuilder类

    一.除了使用String类存储字符串之外,还可以使用StringBuffer类存储字符串.而且它是比String类更高效的存储字符串的一种引用数据类型. 优点: 对字符串进行连接操作时,使用Strin ...

  5. Redis过期设置

    Redis支持按key设置过期时间,过期后值将被删除(在客户端看来是补删除了的) 用TTL命令可以获取某个key值的过期时间(-1表示永不过期) 127.0.0.1:6379> set name ...

  6. Spring课程 Spring入门篇 5-1 aop基本概念及特点

    概念: 1 什么是aop及实现方式 2 aop的基本概念 3 spring中的aop 1 什么是aop及实现方式 1.1 aop,面向切面编程,比如:唐僧取经需要经过81难,多一难少一难都不行.孙悟空 ...

  7. Cocos2d-js 开发记录:声音播放

    声音播放可以使用cc.audioEngine,需要播放的文件在resource.js中进行添加如: button_press_mp3: "res/audio/press.mp3", ...

  8. python占位符%s,%d,%r,%f

    input接收的所有输入默认都是字符串格式 1.%s代表字符串占位符 conn, client_addr = phone.accept() print(conn) print(client_addr) ...

  9. mysql四-1:单表查询

    一.单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二.关键 ...

  10. Hadoop的安装与配置(虚拟机中的伪分布模式)

    1引言 hadoop如今已经成为大数据处理中不可缺少的关键技术,在如今大数据爆炸的时代,hadoop给我们处理海量数据提供了强有力的技术支撑.因此,了解hadoop的原理与应用方法是必要的技术知识. ...