91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flask框架中有哪些常見的裝飾器

發布時間:2021-04-13 17:33:50 來源:億速云 閱讀:220 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關Flask框架中有哪些常見的裝飾器,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

@app.before_request
def before(*args,**kwargs):
  print('請求之前')
  '''
  如果允許通過訪問,可以return None
  該裝飾器裝飾的函數如果有return其他內容則直接結束訪問,
  效果有點類似django的process_reqeust中間件方法。
  比如通過這個裝飾器寫登陸驗證,判斷其是否有session,沒有則不允許訪問,有則繼續訪問
  然后通過request.path判斷訪問的函數,如果是登陸(白名單)則通過。
  request.url 是完整的url
  request.path是域名后面的url正則
  '''
  if request.path == '/login':
    return None
  user = session.get('user_info')
  if user:
    return None
  return redirect('/login')

類似process_response

@app.after_request
def after(response):
  #效果和process_response是一樣的,必須有返回值,沒有則報錯。
  print('我走了')
  return response

flask中間件裝飾器執行順序。

如果多個app.before_requestapp.after_request

那么執行順序也和django類似,

app.before_request是按照從上而下執行(文件的上下),app.after_request是自下而上執行。

如果在app.before_requestreturn了其他內容,請求被攔截,那么不會執行視圖函數,

直接從最后一個app.after_reqeust倒著開始執行所有after_request

自定義錯誤頁面:

@app.error_handlers(404)
def error_404(arg):
  '''自定義錯誤頁面,根據狀態碼定制'''
  return "404錯誤啦"

模板中定制方法:

前端直接調用后端函數的裝飾器:

@app.template_global()
def xx(a1,a2):
  return a1+a2
'''
這個裝飾器的作用就是,可以在前端直接通過{{ xx(1,2)}}來調用后端的這個函數。
'''

相當于filter的裝飾器

@app.template_filter()
def db(a1,a2,a3):
  return a1+a2+a3
'''
效果和django的Filter相似,前端渲染的時候需要注意寫法
{{ 1|db(2,3)}} 1是第一個參數,后面是2,3參數。
'''

第一次來請求操作的裝飾器:

@app.before_first_request
def first(*args,**kwargs):
  pass
'''
只有第一次請求時候才執行的函數裝飾器
'''

Flask的中間件一般感覺用處不大,不如裝飾器方便

Flask框架中有哪些常見的裝飾器

以上就是Flask框架中有哪些常見的裝飾器,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

金塔县| 牟定县| 交口县| 克拉玛依市| 长春市| 花莲县| 津市市| 巴彦县| 班戈县| 凭祥市| 图木舒克市| 子长县| 阿拉善左旗| 澄城县| 内丘县| 泰州市| 成都市| 格尔木市| 濉溪县| 香格里拉县| 靖安县| 阳山县| 合川市| 汉源县| 贵阳市| 从江县| 修水县| 牟定县| 班戈县| 中江县| 新巴尔虎右旗| 通城县| 突泉县| 福清市| 新宾| 青海省| 沅江市| 芷江| 五莲县| 蒙自县| 逊克县|