flask之請求擴充套件

2022-04-10 13:35:06 字數 1468 閱讀 3641

可以多個請求之前的函式

執行順序是誰在前面誰先執行

如果前面的before_request有返回值,後面的都不會執行

#基於它做使用者登入認證

def process_request(*args,**kwargs):

if request.path == '/login':

return none

user = session.get('user_info')

if user:

return none

return redirect('/login')

def sb():

print(request)

print("我是請求之前")

return "我是請求之前1的返回"

# 上面有返回值,後面的都不會執行

def sb1():

print("我是請求之前2")

#return "我是請求之前2的返回"

可以在請求之後新增多個after_request

執行順序是誰在前面誰後執行

before_request對我的after_request沒有影響,有沒有返回值都會執行

def process_response1(response):

print('process_response1 走了')

return response

def process_response2(response):

print('process_response2 走了')

return response

'''

專案啟動後的第一次訪問

'''def first():

print("我的第一次")

'''

無論有沒有異常都會執行,有異常會把異常傳遞進來

'''def ter(e):

print(e)

print("我是異常")

'''

'''def error_404(arg):

return "404錯誤了"

標籤

def sb(a1, a2):

return a1 + a2

'''在模板中直接使用該函式就可以了,不需要返回模板並傳參

'''#}

過濾器def db(a1, a2, a3):

return a1 + a2 + a3

'''在模板中直接使用該過濾器就可以,根據函式的形參來傳遞

'''#}

總結:1 重點掌握before_request和after_request,

2 注意有多個的情況,執行順序

3 before_request請求攔截後(也就是有return值),response所有都執行

Flask之請求鉤子

什麼是請求鉤子?說白了,就是在執行檢視函式前後你可以進行一些處理,flask使用裝飾器為我們提供了註冊通用函式的功能。before first request 在處理第乙個請求前執行 before request 在每次請求前執行 after request 每次請求之後呼叫,前提是沒有未處理的異常...

Flask之請求鉤子

什麼是請求鉤子?說白了,就是在執行檢視函式前後你可以進行一些處理,flask使用裝飾器為我們提供了註冊通用函式的功能。before first request 在處理第乙個請求前執行 before request 在每次請求前執行 after request 每次請求之後呼叫,前提是沒有未處理的異常...

flask之請求上下文

第一階段 將ctx request,session 放到local物件上 第二階段 檢視函式匯入 request session request.method localproxy物件.method,執行getattr方法,getattr self.get current object name s...