目录
前言

第1章 从新浪微博聊起多端应用1

1.1 AOP面对切面编程思想1

1.2 Django的前后端分离2

1.2.1 什么是API2

1.2.2 RESTful规范——如何写API3

1.2.3 Django REST framework简介4

第2章 用Django REST framework实现豆瓣API应用6

2.1 豆瓣API功能介绍6

2.2 Django REST framework序列化6

2.2.1 Postman的使用7

2.2.2 用serializers.Serializer方式序列化7

2.2.3 用serializers.ModelSerializer方式序列化10

2.3 Django REST framework视图三层封装13

2.3.1 用mixins.ListModelMixin+GenericAPIView的方式实现视图封装13

2.3.2 用generics.ListAPIView的方式实现视图封装14

2.3.3 用viewsets+Router的方式实现视图封装15

2.3.4 小结17

第3章 用Django设计大型电商的类别表19

3.1 电商类别表的项目功能需求19

3.1.1 类别表需求分析19

3.1.2 使用Vue.js在前端开发一个电商导航栏项目demo120

3.2 为什么不用传统建表方式建类别表32

3.2.1 使用PyCharm新建后端演示项目32

3.2.2 完善demo2的后台逻辑代码37

3.2.3 前后端项目联合调试39

3.3 使用Django的model实现类别表建立44

3.3.1 四表合一44

3.3.2 数据导入45

3.3.3 前后端项目联合调试47

第4章 用Django实现百度开发者认证业务模型50

4.1 Web 2.0时代,UGC的时代50

4.1.1 什么是UGC50

4.1.2 UGC、PGC和OGC三种模式的关系演变51

4.2 内容生产者认证业务模型是基础52

4.2.1 内容生产者认证的原理52

4.2.2 业界主流的两种认证方式53

4.3 初始化一个项目为功能演示做准备54

4.3.1 演示认证业务项目的前端逻辑54

4.3.2 演示认证业务项目的后端逻辑57

4.4 Django实现通过手机号注册功能60

4.4.1 业务流程原理及需求分析60

4.4.2 在demo3中开发注册用户的静态页面61

4.4.3 编写前端验证用户信息的逻辑代码63

4.4.4 短信服务商的对接65

4.4.5 在后端demo4中编写验证码相关逻辑68

4.4.6 编写发送验证码的前端逻辑代码72

4.4.7 完成确认注册功能73

4.5 Django实现邮箱激活功能75

4.5.1 什么是POP3、SMTP和IMAP75

4.5.2 开启新浪邮箱的SMTP服务76

4.5.3 编写邮箱激活功能的前端逻辑代码76

4.5.4 在前端demo3中增加认证激活代码79

4.5.5 小结及进一步的设计思路80

第5章 区块链时代与Token登录81

5.1 Cookie/Session在前后端分离项目中的局限性81

5.1.1 什么是Cookie机制81

5.1.2 Django中使用Cookie83

5.1.3 Cookie机制的危险与防护88

5.1.4 什么是Session机制90

5.1.5 Django中使用Session92

5.1.6 小结:Cookie/Session的局限性95

5.2 为什么是Token95

5.2.1 什么是Token95

5.2.2 基于区块链技术发展中Token的技术展望96

5.3 Django实现Token登录的业务模式97

5.3.1 Django REST framework的Token生成97

5.3.2 Django REST framework的Token认证99

5.3.3 Django REST framework的Token的局限性102

5.3.4 Json Web Token的原理103

5.3.5 JWT在Django中的应用104

第6章 实现优酷和爱奇艺会员的VIP模式109

6.1 为内容付费是趋势109

6.1.1 网速提升对产品设计的影响109

6.1.2 内容付费模式介绍110

6.2 Django权限管理的实现110

6.2.1 什么是权限111

6.2.2 新建项目来完成权限管理雏形演示111

6.2.3 什么是RBAC118

6.2.4 Django项目中使用RBAC118

6.2.5 Django基于中间件的权限验证126

6.3 Django REST framework实现权限管理130

6.3.1 准备演示权限管理的初始代码131

6.3.2 为demo6_drf添加身份验证功能137

6.3.3 为demo6_drf添加权限管理功能140

6.3.4 验证demo6_drf权限管理的功能142

第7章 违禁词自审查功能148

7.1 违禁词自审查功能的重要性148

7.1.1 违禁词的影响148

7.1.2 可以避免法律风险148

7.2 Django REST framework实现模糊搜索功能149

7.2.1 演示实现模糊搜索的后端逻辑149

7.2.2 演示实现模糊搜索的前端逻辑155

7.2.3 开发模糊搜索功能158

7.3 Django REST framework开发违禁词自审查功能162

7.3.1 开发违禁词自审查功能后端逻辑162

7.3.2 创建新用户165

7.3.3 开发违禁词自审查功能前端逻辑169

7.3.4 违禁词自审查功能开发172

第8章 分析吾爱破解论坛反爬虫机制182

8.1 网络爬虫与反爬虫182

8.1.1 什么是网络爬虫182

8.1.2 Robots协议184

8.1.3 常见的反爬虫手段184

8.2 吾爱破解论坛怎样反爬虫190

8.2.1 注册阶段的反爬虫190

8.2.2 登录阶段的反爬虫192

8.2.3 搜索阶段的反爬虫197

8.2.4 怎样彻底阻止网络爬虫198

8.3 Django REST framework实现频率限制201

8.3.1 建立演示频率限制功能的项目201

8.3.2 网页客户端向服务端提交了多少信息203

8.3.3 频率限制功能开发205

8.3.4 频率限制该怎样确定207

第9章 关于跨域问题的解决办法209

9.1 什么是跨域209

9.1.1 浏览器的同源策略209

9.1.2 什么情况下会发生跨域问题216

9.2 跨域问题的几种解决思路216

9.2.1 通过jsonp跨域216

9.2.2 document.domain + iframe跨域217

9.2.3 CORS(跨域资源共享)217

9.2.4 Nginx代理跨域218

9.2.5 小结218

9.3 前端项目解决跨域问题218

9.3.1 webpack与webpack-simple的区别218

9.3.2 在前端项目中解决跨域问题221

9.4 在后端项目中解决跨域问题224

第10章 用Django实现支付功能228

10.1 分析目前主流的支付模式228

10.1.1 支付宝的业务模式228

10.1.2 生成公钥和私钥232

10.2 支付宝文档分析239

10.2.1 请求地址240

10.2.2 必填的公共参数240

10.2.3 必填的请求参数241

10.2.4 签名加密242

10.3 Django实现支付宝的对接243

10.3.1 演示对接支付宝的实例项目243

10.3.2 开发注册和登录功能246

10.3.3 Django开发支付宝的支付功能250

第11章 Redis缓存——解决亿万级别的订单涌进257

11.1 Django实现缓存机制257

11.1.1 缓存的介绍257

11.1.2 Django提供的6种缓存方式257

11.1.3 演示Django缓存机制项目258

11.1.4 Django开发缓存功能261

11.1.5 各种缓存配置262

11.2 Django REST framework实现缓存机制264

11.2.1 新建演示Django REST framework实现缓存机制的项目265

11.2.2 Django REST framework开发缓存机制266

11.2.3 缓存配置使用Redis269

第12章 前后端分离项目上线部署到云服务器271

12.1 准备一个前后端分离项目271

12.1.1 准备一个最基础的前后端分离项目271

12.1.2 对前后端分离项目进行改造274

12.2 云服务器的准备284

12.2.1 购买华为云服务器284

12.2.2 服务器端安装MySQL5.7285

12.2.3 压缩项目288

12.2.4 使用FileZilla将demo12a.zip和demo12b.zip传到服务器端289

12.3 远程同步数据库291

12.4 正式开始部署295

12.4.1 部署前端项目demo12b295

12.4.2 部署后端项目demo12a298


按 Ctrl+p 打印本页】【关闭