flask application factory 工廠模式_Max行銷誌

【Flask 教學】實作 Flask Application Factories 工廠模式

發佈於 發佈留言分類: 04 Python Flask 教學10 所有文章

ㄧ. Flask 為什麼要使用工廠模式? 當需要切換測試環境,或是有許多不同版本配置的 Flask Application 時,官方推薦使用 Application Factories。Application Factories — Flask Documentation (1.1.x) 1. 什麼是 工廠模式 設計模型 關於工廠模式 – 維基百科 的補充: 建立物件可能會導致大量的重複代碼,可能會需要複合物件存取不到的資訊,也可能提供不了足夠級別的抽象,還可能並不是複合物件概念的一部分。工廠方法模式通過定義一個單獨的建立物件的方法來解決這些問題。 簡單來說就是利用工廠模式的設計,當傳入不同參數時,會取得不同的實例。 2. 舉個 Flask 工廠模式的例子 當使用工廠模式後 ma […]

Chrome 85 Referer-Policy 更新_Max行銷誌

【Chrome 85 更新】淺談 Referer-Policy 和更新影響

發佈於 發佈留言分類: 10 所有文章

一. 開始之前,先科普一下 HTTP Referer 是什麼? 當使用者訪問網站時,會發送請求 (request) 給伺服器主機,而請求 header 中會有一個欄位是「referer」,而此欄位會存放當前請求來源的位置,也就是說請求的來源頁面。 舉個例子:當小明從「iT邦幫忙」網站中點擊連結後,進入「Max 行銷誌」網站時,所發送的 request 請求 referer 就會是 https://ithelp.ithome.com.tw/ 的網址。 補充冷知識: 早期的人在講「referer」的時候拼錯字了,所以 HTTP 裡面的「referer」,正確拼法其實是「referrer」,但後來就將錯就錯了,變成一個軟體界著名的拼字錯誤案例 XDD HTTP Referrer-Policy 是什 […]

flask-blueprints-Max行銷誌

【Flask 教學】實作 Flask Blueprints 和淺談 Circular Imports

發佈於 發佈留言分類: 04 Python Flask 教學10 所有文章

一. 從簡單的 Flask 開始 首先來看一個大家熟悉且單純的 Flask,運行 flask run 後,連線 http://127.0.0.1:5000/ 後,在網頁上會得到 foo 的字詞 app.py 1.當 Flask 架構越來越龐大… 但是隨著網站架構越來越龐大,把所有的 route 都放在 main.py 裡面,在維護上會有很大的困擾,所以我們開始試著把部分功能切到另外一個 py 檔案裡。 開始將 route 切出來,不再都集中在 app.py 內: app.py userdata.py 運行 flask 連線 http://127.0.0.1:5000/auth 會發生 Not Found 的錯誤 會發生這個原因,是因為 import 循環衝突的問題造成,如下圖當運行 flas […]