您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“flask截獲所有訪問及before/after_request修飾器的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“flask截獲所有訪問及before/after_request修飾器的示例分析”這篇文章吧。
具體如下。
在學習著用flask開發安卓后天接口時,遇到一個需求,就是想截獲所有請求,即在所有請求進入app.route裝飾的函數前先被處理一次。
經過在網上查找資料后,知道了@before_request、@after_request這兩個方法,示例:
@app.before_request def before_request(): ip = request.remote_addr url = request.url print ip, print url
before_request()函數被app.before_request修飾以后,每一次請求到來后,都會先進入函數before_request()中,如上代碼,獲取請求的ip以及url,并打印出來,執行完畢后請求才會正常進入到app.route修飾的函數中響應,如果有多個函數被app.before_request修飾了,那么這些函數會被依次執行。
app.before_request修飾器在開發中用處非常大,比如判斷某個ip是否有惡意訪問行為,從而進行攔截等操作。
此外同理,app.after_request修飾器是在用戶請求得到函數響應后被執行,不過需要注意的是這個執行是在函數返回數據前被調用,即請求已經被app.route修飾的函數響應過了,已經形成了response,但還未返回給用戶的時候,調用的。
以上是“flask截獲所有訪問及before/after_request修飾器的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。