restful现在非常流行,所以很有必要提一下 web服务交互 在浏览器中能看到的每个网站,都是一个web服务.那么我们在提供每个web服务的时候,都需要前后端交互,前后端交互就一定有一些实现方案,我们通常叫web服务交互方案. 目前主流的三种web服务交互方案: REST ( Representational State Transfer)表述性状态转移 SOAP (Simple Object Access Protocol) 简单的对象访问协议 XML-RPC (XML Remote Pro…
CBV与FBV CBV之前说过就是在view.py里写视图类,在序列化时用过,FBV就是常用的视图函数,两者的功能都可以实现功能,但是在restful规范方面的话,CBV更方便,FBV还要用request.method来判断是get,put,post等的,在CBV里要用什么就定义什么方法,根据请求的方法自动进入对应的CBV的方法里,节省了判断请求类型的过程 View与APIView APIView就是在View上做了二次封装,多了一些功能而已,View是django自带的视图组件 在 前后端分离…
加密视频 在以后的开发项目中,很可能有做在线视频的,而在线视频就有个问题,因为在线播放,就很有可能视频数据被抓包,如果这个在线视频平台有付费视频的话,这样就会有人做点倒卖视频的生意了,针对这个问题,目前国内有很多不错的加密视频平台,可以把你平台的视频放在他们那里,然后通过他们的机制进行加密,然后做一套机制,当用户使用平台播放时,其实是平台去加密视频方请求过来的加密视频,这样就可以保证视频的安全性了 常用加密视频平台 鄙人听说的,有保利威,金盾,还有很多很多我叫不上名,搜索引擎一搜就有一大堆的,本…
关于验证码部分,在我这篇文章里说的挺详细的了:Python高级应用(3)—— 为你的项目添加验证码 这里还是再给一个前后端分离的实例,因为极验官网给的是用session作为验证的,而我们做前后端分离的用的是token,而不是session,所以对于目前来说就不适用了,所以需要根据具体业务逻辑来改动.当然,大佬可以直接忽略 djangorestframework+redis+jquery 好的,直接上例子: 还是用的 Python高级应用(3)—— 为你的项目添加验证码 这文章最后的LoginAu…
Pagination 为什么要分页也不用多说了,大家都懂,DRF也自带了分页组件 这次用  前后端分离djangorestframework——序列化与反序列化数据  文章里用到的数据,数据库用的mysql,因为django自带的sqlite对于日期类型的数据会自动转成时间戳,导致数据再序列化时无法正常序列化成日期类型而出错 分页组件还是跟前面的认证组件,权限组件,频率组件很类似的 PageNumberPagination 在根目录创建一个utils文件夹,在该文件夹里创建一个paginatio…
在文章前后端分离djangorestframework——视图组件 中,见识了DRF的视图组件强大,其实里面那个url也是可以自动生成的,就是这么屌 DefaultRouter urls文件作如下调整 访问 注意我访问的url地址: 查看单条数据: 修改: 删除: 但是一般情况下不用这个,因为这样会暴露出所有的url,可能会有被恶意攻击的可能性 所以为了安全,原则上不会这么做,除非是很多,而且这些自动生成的url我们都有用到 且注意,标注区域,一定不能写成 r'$',不然会匹配出错…
一.web开发的两种模式 1.前后端不分离 在前后端不分离的应用模式中,前端页面看到的效果都是由后端控制,由后端渲染页面或重定向,也就是后端需要控制前端的展示,前端与后端的耦合度很高. 这种应用模式比较适合纯网页应用,但是当后端对接App时,App可能并不需要后端返回一个HTML网页,而仅仅是数据本身,所以后端原本返回网页的接口不再适用于前端App应用,为了对接App后端还需再开发一套接口. 请求的数据交互如下图: 2.前后端分离 在前后端分离的应用模式中,后端仅返回前端所需的数据,不再渲染HT…
我们写好后端的代码,要把数据交给前端的展示的,这个数据以什么类型给前端呢?学到这里,我们已经知道这个数据最好是json字符串才行,因为网络间的传输,只认字符串或者二进制,字符串就是我们的数据,二进制就是流媒体,比如图片,视频,音频之类的 但是我们在后端经过逻辑处理得到的数据并不一定一开始就是个json字符串,所以就需要序列化下 补充: 序列化:将其他类型的数据转为字符串 反序列化:将字符串转回之前的数据类型(通常是字典类型) 在Python中,可用于序列化与反序列化的就是json和pickle模…
为什么要前后端分离(优点): PC,APP,PAD 多端适应 单页面应用(Single Page Application)SPA开发模式开始流行 前后端开发职责不清 开发效率问题,前后端互相等待 前端一直配合着后端,能力受限 后台开发语言和模板高度耦合,导致开发语言依赖严重 前后端分离缺点: 前后端学习门槛都增加 数据依赖导致文档重要性增加,文档很重要在前后端分离模式中 搜索引擎优化SEO(Search Engine Optimization)的难度增大 后端开发模式迁移成本增加 restful…
authentication 认证是干嘛的已经不需要多说.而前后端未分离的认证基本是用cookie或者session,前后端分离的一般用token 全局认证 先创建一个django项目,项目名为drfversion,app名为DRF,设置简单的数据库表,并迁移: model: view: url: 启动项目,访问测试,先创建一个用户root,密码123: 写入一个认证类,读源码可知,自定义的认证类必须要定义这个方法: 在项目根目录创建一个utils文件夹,创建auth文件,定义一个认证类,必须继…