W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
從 Flask 0.6 開始, Flask 集成了信號支持。這個支持由 blinker 庫提供, 并且當(dāng)它不可用時會優(yōu)雅地退回。
什么是信號?信號通過發(fā)送發(fā)生在核心框架的其它地方或 Flask 擴展的動作 時的通知來幫助你解耦應(yīng)用。簡而言之,信號允許特定的發(fā)送端通知訂閱者發(fā) 生了什么。
Flask 提供了幾個信號,其它的擴展可能會提供更多。另外,請注意信號傾向于 通知訂閱者,而不應(yīng)該鼓勵訂閱者修改數(shù)據(jù)。你會注意到,信號似乎和一些內(nèi)置的 裝飾器做同樣的事情(例如: request_started 與 before_request() 十分相似)。然而它們工作的方式是有 差異的。譬如核心的 before_request() 處理程序以特定的順 序執(zhí)行,并且可以在返回響應(yīng)之前放棄請求。相比之下,所有的信號處理器執(zhí)行的 順序沒有定義,并且不修改任何數(shù)據(jù)。
信號之于其它處理器最大的優(yōu)勢是你可以在一秒鐘的不同的時段上安全地訂閱。譬 如這些臨時的訂閱對單元測試很有用。比如說你想要知道哪個模板被作為請求的一 部分渲染:信號允許你完全地了解這些。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: