iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Flask中特殊装饰器的使用
  • 680
分享到

Flask中特殊装饰器的使用

Flask特殊装饰器 2023-02-24 17:02:22 680人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

(1)@app.before_request 请求到达视图函数之前,进行自定义操作,类似Django中间件中的process_request,在app中使用则为全局,在蓝图中使用则针

(1)@app.before_request

请求到达视图函数之前,进行自定义操作,类似Django中间件中的process_request,在app中使用则为全局,在蓝图中使用则针对当前蓝图

注意正常状态下return值必须为None

(2)@app.after_request

响应返回到达客户端之前,进行自定义操作,类似janGo中间件中的process_response,在app中使用则为全局,在蓝图中使用则针对当前蓝图

注意正常状态下视图函数必须定义一个形参接收response对象,并通过return response返回

(3)@app.errorhandler()

错误状态码捕获执行函数,装饰器参数务必是4xx或者5xx的int型错误状态码

(4) @app.template_global() :定义装饰全局模板可用的函数,直接可在模板中进行渲染使用

@app.template_filter(): 定义装饰全局模板可用的过滤器函数,类似django中的自定义过滤器,直接可在模板中使用

这两个特殊装饰器主要用在模板渲染!!!

import apps
from flask import request, session, redirect
 
app = apps.create_app() 
 
@app.before_request
def before1():
    print("before1", request)
  
@app.before_request
def before2():
    print("before2")
    if request.path == "/":
        return None
    else:
        #这里抛出了一个异常,会被@app.errorhandler(Exception)
        # 捕获到。
        raise Exception("hahaha") 
 
@app.before_request
def before3():
    print("before3")
  
@app.after_request
def after1(res):
    print("after1")
    return res 
 
@app.after_request
def after2(res):
    print("after2")
    return res 
 
@app.after_request
def after3(res):
    print("after3")
    return res
  
# 处理异常,接受参数,可以重定向到指定页面
@app.errorhandler(Exception)
def error(e):
    print("error")
    return redirect("/") 
 
@app.route("/login")
def login():
    print("login")
    return "login"
 
@app.route('/')
def hello_world():  # put application's code here
    return 'Hello World!'
 
if __name__ == '__main__':
    app.run()

到此这篇关于Flask中特殊装饰器的使用的文章就介绍到这了,更多相关Flask 特殊装饰器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Flask中特殊装饰器的使用

本文链接: https://www.lsjlt.com/news/197477.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Flask中特殊装饰器的使用
    (1)@app.before_request 请求到达视图函数之前,进行自定义操作,类似django中间件中的process_request,在app中使用则为全局,在蓝图中使用则针...
    99+
    2023-02-24
    Flask 特殊装饰器
  • Flask中的特殊装饰器如何使用
    这篇“Flask中的特殊装饰器如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Flask中的特殊装饰器如何使用”文章吧...
    99+
    2023-07-05
  • Python中的装饰器使用
    目录Python装饰器总结Python装饰器 Python的装饰器是个好东西,它能干很多事情。 但对于新手,它看起来似乎没那么简单。 但事实上,装饰器本身也只是个函数。 import...
    99+
    2022-12-19
    Python装饰器使用 装饰器使用 Python装饰器
  • Python中怎么使用装饰器装饰函数
    这篇文章将为大家详细讲解有关Python中怎么使用装饰器装饰函数,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。***个函数deco是装饰函数,它的参数就是被装饰的函数对象。我们可以在deco...
    99+
    2023-06-17
  • java中特殊monitor的使用实例
    这篇文章主要介绍java中特殊monitor的使用实例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、说明this monitor:在成员方法上的synchronized,就是this monitor,等价于在方法...
    99+
    2023-06-15
  • Vue中的装饰器如何使用
    小编给大家分享一下Vue中的装饰器如何使用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!相信各位在开发中一定遇到过二次弹框确认相关的需求。不管你使用的是UI框架的...
    99+
    2023-06-29
  • Python中怎么使用装饰器来装饰函数
    在Python中,装饰器是一种函数,它接受一个函数作为参数,并返回一个新的函数。通过使用装饰器,可以在不修改原始函数代码的情况下添加...
    99+
    2024-03-12
    Python
  • Python中如何使用装饰器?
    类方法和静态方法有点相似,他们都推荐使用类来调用(其实也可以使用对象来调用) 定义类方法 —使用@classmetho修饰(函数装饰器) —方法的第一个参数定义为cls(class的缩写),用类调用该方法时该参数会自动绑定 定义静...
    99+
    2023-01-31
    如何使用 Python
  • Vue中怎么使用装饰器
    本篇内容介绍了“Vue中怎么使用装饰器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是装饰器?Decorator是ES7的一个新语法。D...
    99+
    2023-06-28
  • Vue中如何使用装饰器
    今天就跟大家聊聊有关Vue中如何使用装饰器,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。什么是装饰器装饰器是ES2016提出来的一个提案,当前处于S...
    99+
    2024-04-02
  • python中装饰器怎么使用
    这篇文章给大家分享的是有关python中装饰器怎么使用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、装饰器使用场景经常用于有切面需求的场景,比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解...
    99+
    2023-06-15
  • Python利用装饰器实现类似于flask路由
    目录1.例子12.python 利用装饰器实现类似于flask路由1.例子1 def f1(): print(1111) def f2(): print(22...
    99+
    2023-02-28
    Python装饰器实现flask路由 Python实现flask路由 Python装饰器 Python 装饰器 flask路由
  • JavaScript中的特殊函数怎么使用
    这篇文章主要介绍“JavaScript中的特殊函数怎么使用”,在日常操作中,相信很多人在JavaScript中的特殊函数怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScript中的特殊函数怎...
    99+
    2023-07-02
  • angular中的@Component装饰器怎么使用
    今天小编给大家分享一下angular中的@Component装饰器怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收...
    99+
    2024-04-02
  • Python - 装饰器使用过程中的误
    装饰器基本概念 大家都知道装饰器是一个很著名的设计模式,经常被用于 AOP (面向切面编程)的场景,较为经典的有插入日志,性能测试,事务处理,Web权限校验, Cache等。 Python 语言本身提供了装饰器语法(@),典型的装饰器实现...
    99+
    2023-01-31
    过程中 Python
  • python中property装饰器的使用方法
    这篇文章主要介绍python中property装饰器的使用方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(长整型)和...
    99+
    2023-06-15
  • Bash脚本中特殊变量$0的使用
    目录1. 显示脚本的名称和路径2. 比较脚本的名称和路径3. 脚本自身的调试和测试结论在 Bash 脚本中,$0 是一个特殊变量,它代表当前脚本的路径和名称。这个变量用于表示脚本自身,它是 Bash 环境中的一个重要组成...
    99+
    2023-05-06
    Bash 特殊变量$0 Bash $0
  • Python怎么用装饰器实现类似于flask路由
    这篇文章主要介绍“Python怎么用装饰器实现类似于flask路由”,在日常操作中,相信很多人在Python怎么用装饰器实现类似于flask路由问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么用...
    99+
    2023-07-05
  • Python装饰器中@property使用详解
    目录最初的声明方式使用装饰器的声明方式使用装饰器的调用过程总结最初的声明方式 在没有@property修饰的情况下,需要分别声明get、set、delete函数,然后初始化prope...
    99+
    2024-04-02
  • 如何使用装饰器
    本篇内容主要讲解“如何使用装饰器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用装饰器”吧!1. 常规的装饰器下面这是一个最简单的装饰器示例,在运行 myfunc 函数的前后都会打印一条日...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作