第9章 Python Web 框架考察点
生活随笔
收集整理的這篇文章主要介紹了
第9章 Python Web 框架考察点
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python WSGI與web框架常考點
WSGI 常見Web框架
◆什么是WSGI? ◆常用的 Python Web框架Dang/Fask/Tornado對比 ◆web框架的組成(淡化框架,加強基礎)什么是WSGI?
什么是WSGI?為什么需要它? 經常使用uwsgi/gunicorn 部署 Django/Flask應用 為什么Flask/Django都可以運行在 gunicorn之上? ◆Python Web Server Gateway Interface(pep3333) ◆解決 Python Web Server亂象 mod_python, CGI, FastcGI等 ◆描述了 Web Server(gunicorn/uWSGI)如何與web框架(Flask/Django)交互,Web框架如何處理請求一個簡單的兼容WSGI的web應用
運行web應用
常用的 Python Web框架對比
Django vs Flask vs Tornado ◆ Django:大而全,內置ORM、 Admin等組件,第三方插件較多 ◆ Flask:微框架,插件機制,比較靈活 cookiecutter-flask 生成統一的項目模板 ◆?Tornado:異步支持的微框架和異步網絡庫什么是MVC?
MVC:模型(Model),視圖(View),控制器(Controller) 解耦數據、展示和操作 ◆ Model:負責業務對象和數據庫的交互(ORM) ◆ VieW:負責與用戶的交互展示 ◆ Controller:接收請求參數調用模型和視圖完成請求 Object Relational Mapping,對象關系映射 ◆用于實現業務對象與數據表中的字段映射 Sqlalchemy Django ORM Peewee ◆優勢:代碼更加面向對象,代碼量更少,靈活性高,提升開發效率Web安全常考點
常見的web安全問題,原理和防范措施。安全意識
◆SQ注入 ◆XSS(跨站腳本攻擊, Cross-Site Scripting) ◆CSRF(跨站請求偽造, Cross-site request forgery)什么是SQL注入?
SQL注入與防范 ◆通過構造特殊的輸入參數傳入Web應用,導致后端執行了惡意SQL ◆通常由于程序員未對輸入進行過濾,直接動態拼接SQL產生 ◆可以使用開源工具 sqlmap, SQLninja檢測 拼接sql 導致 解決辦法如何防范SQL注入?
Web安全一大原則:永遠不要相信用戶的任何輸入 ◆對輸入參數做好檢査(類型和范圍);過濾和轉義特殊字符 ◆不要直接拼接sql,使用ORM可以大大降低sql注入風險 ◆數據庫層:做好權限管理配置;不要明文存儲敏感信息什么是XSS?
Xss( Cross Site Scripting),跨站腳本攻擊 ◆惡意用戶將代碼植入到提供給其他用戶使用的頁面中,未經轉義的惡意代碼輸岀到其他用戶的瀏覽器被執行 ◆用戶瀏覽頁面的時候嵌入頁面中的腳本(js)會被執行,攻擊用戶 ◆主要分為兩類:反射型(非持久型),存儲型(持久型) XSS危害 XSS可以利用js實現很多危害巨大的操作 ◆盜用用戶 cookie,獲取敏感信息前后端分離與RESTful常見面試題
什么是前后端分離?什么是 RESTful ◆前后端分離的意義和方式 ◆什么是 RESTfUl ◆如何設計 RESTful API什么是前后端分離?有哪些優點?
后端只負責提供數據接口,不再渲染模板,前端獲取數據并呈現 ◆前后端解耦,接口復用(前端和客戶端公用接口),減少開發量 ◆各司其職,前后端同步開發,提升工作效率。定義好接口規范 ◆更有利于調試(mock)、測試和運維部署 不好做SEO什么是 RESTful
Representational State Transfer ◆表現層狀態轉移,由HTTP協議的主要設計者RoyFielding提出 ◆資源( Resources),表現層( Representation),狀態轉化(State?Transfer) ◆是一種以資源為中心的web軟件架構風格,可以用Ajax和 RESTful?web服務構建應用RESTful解釋
三個名詞的解釋 ◆ Resources(資源):使用URI指向的一個實體 ◆ Representation(表現層):資源的表現形式,比如圖片、HTML文本等 ◆ State Transfer(狀態轉化):GET、POST、PUT、 Delete Http 動詞來操作資源,實現資源狀態的改變RESTful 的準則
設計概念和準則 ◆所有事物抽象為資源(resource),資源對應唯一的標識(identifier) ◆資源通過接口進行操作實現狀態轉移,操作本身是無狀態的 ◆對資源的操作不會改變資源的標識 把HTTP動詞語義和數據庫的增刪改查結合到一起什么是 RESTful API
RESTful 風格的API接口 ◆ 通過 Http GET/POST/PUT/DELETE? ??獲取/新建/更新刪除 資源 ◆?一般使用JSON格式返回數據 ◆?一般web框架都有相應的插件支持 RESTful API 如何設計 RESTful API?Web框架和Web安全思考題
什么是 Https? 中高級考點:HTTP和Https的區別 ◆Https和HTTP的區別是什么? ◆你了解什么是對稱加密和非對稱加密嗎? ◆HTPS的通信過程是什么樣的?你能否用 Wireshark抓包觀察<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">
總結
以上是生活随笔為你收集整理的第9章 Python Web 框架考察点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面向对象实战
- 下一篇: 即将开始的python之路