欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談flask中的before_request與after_request

 更新時(shí)間:2018年01月20日 11:37:43   作者:kwsy2008  
這篇文章主要介紹了淺談flask中的before_request與after_request,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下

本文主要是對(duì)flask中的before_request與after_request用法做一個(gè)簡(jiǎn)單的分析,具體實(shí)例和介紹如下。

使用before_request 和 after_request的方法都非常簡(jiǎn)單,使用 @app.before_request 或者@app.after_request 修飾期望在請(qǐng)求前或請(qǐng)求后執(zhí)行的函數(shù)即可

示例:

@app.before_request 
def before_request(): 
  if not m_ip_range.is_ip_strict(): 
    return 
  ranges = m_ip_range.get_range() 
  ip_int = utils.ip_to_int(request.remote_addr) 
  yes = False 
  for item in ranges: 
    if item['is_used']==0: 
      continue 
    if ip_int >= item['ip_start'] and ip_int <= item['ip_end']: 
      yes = True 
      break 
  if not yes: 
    abort(400) 

before_request()函數(shù)被修飾以后,每一次請(qǐng)求到來(lái)后,都會(huì)先執(zhí)行它,如果沒(méi)問(wèn)題即沒(méi)有執(zhí)行到abort(400),那么就會(huì)進(jìn)入到正常的被app.route修飾的函數(shù)中進(jìn)行響應(yīng),如果有多個(gè)函數(shù)被app.before_request修飾了,那么這些函數(shù)會(huì)被依次執(zhí)行。

你很關(guān)心這個(gè)before_request裝飾器有什么用,其實(shí)它的用處非常大,比如我們希望能對(duì)ip地址進(jìn)行過(guò)濾,雖然你可以使用nginx,但我們也可以使用before_request來(lái)做,使用nginx,我們不得不手動(dòng)的進(jìn)行設(shè)置,但如果是用flask自身的before_request機(jī)制,我們可以在程序判斷出某個(gè)ip有惡意訪問(wèn)行為后將其加入到緩存當(dāng)中(redis),每次請(qǐng)求到來(lái)時(shí),由before_request來(lái)判斷這個(gè)ip是不是合法的。

被app.after_request修飾過(guò)的函數(shù)會(huì)在請(qǐng)求得到相應(yīng)后返回給用戶前被調(diào)用,也就是說(shuō),這個(gè)時(shí)候,請(qǐng)求已經(jīng)被app.route裝飾的函數(shù)響應(yīng)過(guò)了,已經(jīng)形成了response,我們?cè)谶@個(gè)時(shí)候做一些操作,flask有一個(gè)插件叫 flask-compress,是對(duì)響應(yīng)結(jié)果進(jìn)行壓縮的,它就是用after_request的這個(gè)機(jī)制,在response返回前對(duì)數(shù)據(jù)進(jìn)行了壓縮,如果你有別的想要操作的事情,同樣可以使用after_request來(lái)完成。

總結(jié)

以上就是本文關(guān)于淺談flask中的before_request與after_request的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專(zhuān)題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • 教你怎么用python連接sql server

    教你怎么用python連接sql server

    今天教大家怎么用python連接sql server,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • pip升級(jí)pip3的快速方法指南

    pip升級(jí)pip3的快速方法指南

    使用python時(shí)經(jīng)常使用到pip命令,可以方便安裝python的各種第三方庫(kù)這篇文章主要給大家介紹了關(guān)于pip升級(jí)pip3的快速方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • scrapy框架攜帶cookie訪問(wèn)淘寶購(gòu)物車(chē)功能的實(shí)現(xiàn)代碼

    scrapy框架攜帶cookie訪問(wèn)淘寶購(gòu)物車(chē)功能的實(shí)現(xiàn)代碼

    這篇文章主要介紹了scrapy框架攜帶cookie訪問(wèn)淘寶購(gòu)物車(chē),本文通過(guò)實(shí)例代碼圖文詳解給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • python如何拆分含有多種分隔符的字符串

    python如何拆分含有多種分隔符的字符串

    這篇文章主要為大家詳細(xì)介紹了python如何拆分含有多種分隔符的字符串,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python自動(dòng)化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作詳解

    Python自動(dòng)化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作詳解

    這篇文章主要介紹了Python自動(dòng)化運(yùn)維之Ansible定義主機(jī)與組規(guī)則操作,結(jié)合實(shí)例形式分析了自動(dòng)化運(yùn)維工具Ansible定義主機(jī)與組規(guī)則相關(guān)配置操作與注意事項(xiàng),需要的朋友可以參考下
    2019-06-06
  • Python字符串轉(zhuǎn)換成浮點(diǎn)數(shù)函數(shù)分享

    Python字符串轉(zhuǎn)換成浮點(diǎn)數(shù)函數(shù)分享

    本文給大家分享的是一則使用Python實(shí)現(xiàn)字符串轉(zhuǎn)換成浮點(diǎn)數(shù)的代碼,主要是使用map和reduce方法來(lái)實(shí)現(xiàn),有需要的小伙伴可以參考下。
    2015-07-07
  • python實(shí)現(xiàn)簡(jiǎn)易連點(diǎn)器

    python實(shí)現(xiàn)簡(jiǎn)易連點(diǎn)器

    本文主要介紹了python實(shí)現(xiàn)簡(jiǎn)易連點(diǎn)器,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 在pycharm創(chuàng)建scrapy項(xiàng)目的實(shí)現(xiàn)步驟

    在pycharm創(chuàng)建scrapy項(xiàng)目的實(shí)現(xiàn)步驟

    這篇文章主要介紹了在pycharm創(chuàng)建scrapy項(xiàng)目的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • sklearn+python:線性回歸案例

    sklearn+python:線性回歸案例

    今天小編就為大家分享一篇sklearn+python:線性回歸案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • Python解析Laravel?Cookie技巧示例

    Python解析Laravel?Cookie技巧示例

    本文將介紹如何使用Python解析Laravel Cookie,以便在Web開(kāi)發(fā)中處理這些Cookie數(shù)據(jù),我們將深入了解Cookie的結(jié)構(gòu),以及如何在Python中對(duì)其進(jìn)行解析和操作
    2023-12-12

最新評(píng)論