Python Django Web典型模組開發實戰

Python Django Web典型模組開發實戰

《Python Django Web典型模組開發實戰》一書作者寇雪松,由機械工業出版社出版發行。

基本介紹

  • 書名:Python Django Web典型模組開發實戰 
  • 作者:寇雪松
  • 類別:計算機
  • 出版社:機械工業出版社
  • 出版時間:2019年 
  • 頁數:316 頁
  • 定價:99 元
  • 開本:16 開
  • 裝幀:精裝
  • ISBN:9787111632795
內容簡介,圖書目錄,作者簡介,

內容簡介

為了幫助大家成為一名Django全棧開發領域的“大神級”程式設計師,本書講解了11個實戰項目案例的典型開發模組,便於讓大家從項目需求分析、產品設計、業務模式、功能實現、代碼最佳化,以及設計理念和開發原理等角度進行系統學習。本書實用性很強,通過抽絲剝繭的講解,可以幫助讀者穩步提升自己的開發水平。讀者只要按照書中的講解進行學習,就可以完成案例代碼的編寫,實現案例模組的基本功能,並能通過項目案例開發而夯實Django的基礎知識,從而對相關理論知識有更加深入的理解。
本書共12章,涵蓋的內容包括從新浪微博聊起多端套用;用Django REST framework實現豆瓣API套用;用Django設計大型電商的類別表;用Django實現百度開發者認證業務模型;Token登錄模組開發;實現優酷和愛奇藝會員的VIP模式;違禁詞自審查功能模組開發;吾愛破解論壇反爬蟲機制分析;跨域問題的解決辦法;用Django實現支付功能模組;通過Redis快取功能解決億萬級別的訂單湧進;前後端分離項目上線部署到雲伺服器上。
本書適合Django自學者和有一定基礎的Django開發者閱讀,還適合其他領域有Python基礎而想轉型到Django開發的人員閱讀。另外,對於想要成為全棧開發工程師的前後端程式設計師及Python技術愛好者,本書更是一本不可多得的實戰寶典。

圖書目錄

第1章 從新浪微博聊起多端套用 1
1.1 AOP面對切面編程思想 1
1.2 Django的前後端分離 2
1.2.1 什麼是API 2
1.2.2 RESTful規範——如何寫API 3
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在前端開發一個電商導航欄項目demo1 20
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 什麼是UGC 50
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和IMAP 75
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中使用Cookie 83
5.1.3 Cookie機制的危險與防護 88
5.1.4 什麼是Session機制 90
5.1.5 Django中使用Session 92
5.1.6 小結:Cookie/Session的局限性 95
5.2 為什麼是Token 95
5.2.1 什麼是Token 95
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 什麼是RBAC 118
6.2.4 Django項目中使用RBAC 118
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 快取配置使用Redis 269
第12章 前後端分離項目上線部署到雲伺服器 271
12.1 準備一個前後端分離項目 271
12.1.1 準備一個最基礎的前後端分離項目 271
12.1.2 對前後端分離項目進行改造 274
12.2 雲伺服器的準備 284
12.2.1 購買華為雲伺服器 284
12.2.2 伺服器端安裝MySQL5.7 285
12.2.3 壓縮項目 288
12.2.4 使用FileZilla將demo12a.zip和demo12b.zip傳到伺服器端 289
12.3 遠程同步資料庫 291
12.4 正式開始部署 295
12.4.1 部署前端項目demo12b 295
12.4.2 部署後端項目demo12a 298

作者簡介

寇雪松 落憶網路科技有限公司聯合創始人/CTO。多年來一直致力於Python全棧開發和爬蟲開發等工作,對安卓逆向破解技術有研究。獨立與參與開發過多個Django複雜網路系統,是Django REST framework前後端分離技術的開拓者之一。在相關技術論壇中發表了數十篇精品熱門部落格文章。2018年受邀成為騰訊“雲+社區”技術類自媒體專欄作者,並於同年受邀成為阿里“雲棲社區”技術類自媒體專欄作者。

相關詞條

熱門詞條

聯絡我們