第1章 Python、Django和HTTP 1
1.1 Python语言 1
1.1.1 Python语言概述 1
1.1.2 Python的安装 3
1.2 Django框架 4
1.2.1 Django介绍 4
1.2.2 Django的安装 5
1.3 HTTP概述 6
1.3.1 HTTP的工作原理 7
1.3.2 HTTP的请求 8
1.3.3 HTTP的应答 9
1.3.4 HTTP的连接性 13
1.3.5 HTTP的无状态 15
第2章 Django基本知识 17
2.1 启动Django服务 17
2.2 Hello World程序 21
2.2.1 直接打印显示内容 21
2.2.2 通过文件模板显示内容 22
2.2.3 文件模板参数 22
2.3 获取参数 23
2.3.1 通过GET方式获取 23
2.3.2 通过POST方式获取 23
2.4 HttpRequest对象与HttpResponse对象 27
2.4.1 HttpRequest对象 27
2.4.2 HttpResponse对象 28
2.5 setting.py的配置 29
2.5.1 中间件介绍 29
2.5.2 其他配置介绍 30
2.5.3 自定义静态文件 38
2.5.4 案例 39
2.6 session和cookie 42
2.6.1 session 43
2.6.2 cookie 45
2.6.3 Django的用户登录和注册机制 47
2.7 Django的MTV开发模式框架 49
2.8 Django的模型与数据库的管理 50
2.8.1 Django的数据库 50
2.8.2 Django的模型 51
2.8.3 Django的后台管理 55
2.8.4 Django如何对数据库进行操作 57
2.9 Django的视图管理 61
2.9.1 urls.py中路径的定义 61
2.9.2 方法中显示内容 63
2.9.3 处理表单 63
2.9.4 分页功能 65
2.10 Django的模板管理 66
2.10.1 变量的使用 66
2.10.2 标签的使用 66
2.10.3 过滤器的使用 72
2.11 基于Python Requests类数据驱动的HTTP接口测试 75
2.11.1 测试金字塔 75
2.11.2 unittest 76
2.11.3 requests对象的介绍与使用 80
2.11.4 数据驱动的自动化接口测试 85
2.11.5 进一步优化 89
第3章 电子商务网站的实现 92
3.1 需求描述 92
3.1.1 用户信息模块 92
3.1.2 商品信息模块 92
3.1.3 购物车模块 92
3.1.4 送货地址模块 93
3.1.5 订单模块 93
3.1.6 订单支付模块 93
3.2 数据Model设计 93
3.3 用户信息模块 95
3.3.1 用户注册 96
3.3.2 用户登录 104
3.3.3 用户信息显示 109
3.3.4 用户登录密码的修改 130
3.4 商品信息模块 134
3.4.1 商品信息的维护 135
3.4.2 商品概要信息的分页显示 137
3.4.3 商品信息的模糊查询 144
3.4.4 商品信息的详情显示 146
3.5 购物车模块 149
3.5.1 把商品放入购物车 150
3.5.2 查看购物车中的商品 155
3.5.3 修改购物车中的商品数量 161
3.5.4 删除购物车中的某种商品 164
3.5.5 删除购物车内所有的商品 165
3.6 送货地址模块 167
3.6.1 送货地址的添加与显示 167
3.6.2 送货地址的修改 175
3.6.3 送货地址的删除 179
3.7 订单模块 181
3.7.1 总订单的生成和显示 182
3.7.2 查看所有订单 192
3.7.3 删除订单 197
3.8 电子支付模块 200
3.9 建立自定义的错误页面 200
第4章 构建安全的网站 205
4.1 密码的加密 205
4.2 防止CSRF攻击 206
4.2.1 CSRF攻击介绍 206
4.2.2 Django是如何防范CSRF攻击的 207
4.2.3 针对CSRF防御接口测试代码的调整 208
4.3 权限操作的漏洞 212
4.4 防止XSS攻击 218
4.5 防止SQL注入 218
参考文献 220