• Flask请求到响应的流程


    【配置路由】

    使用装饰器配置路由

    [语法规则 ]

    @app.route(url,methods)

    [参数解释]

    url :匹配的URL地址

    methods;支持的请求方式(['GET','POST'])

    [例子]

    @app.route('/login', methods=['GET','POST'])   #是以GET或者POST请求方式来请求这个登录地址

    @app.route('/login', methods=['GET', 'POST'])
    def login():
        return "login success"
    print(app.url_map)

    【路由匹配规则】

    【匹配整个文字】

    @app.route('/hello')

    【传递参数】

    @app.route('/user/<username>')  # 在请求的URL里面加了username的参数 

    【指定参数类型】

    @app.route('/post/<int:post_id>')  # 在请求的URL里面加了post_id的参数,并且指定参数类型为int

    【URL参数类型】

    除了上面我们写的int类型,还有很多类型 见下图

    【视图函数获取页面传值】

    代码例子
    
    """URL中的参数为必填时"""
    @app.route('/page/<page_id>')
    # 那么我们的方法中也要把这个参数传过来
    def  list(page_id):
        return '返回page_id为{}的数据'.format(page_id)
    
    
    
    
    """URL中的值为填和不填都可以时"""
    @app.route('/page/<page_id>')
    # 那么我们的方法中要定义这个参数为None然后再传过来
    def  list(page_id=None):
        pass

    【请求对象】

    1. method:请求的类型(GET/POST/OPTIONS等)
    2. form: POST请求数据dict
    3. args:   GET请求数据dict
    4. values: POST/GET请求数据集合dict
    5. files: 上传的文件数据dict
    6. cookies: 请求中的cookie
    7. headers: HTTP请求头

    【响应对象】

  • 相关阅读:
    【IDDFS】Power Calculus
    【A*/K短路】 [USACO08MAR]Cow Jogging G
    P1880 [NOI1995]石子合并
    【区间DP】[USACO16OPEN]248 G
    【树上背包】P1273 有线电视网
    【分组背包】[BJOI2019]排兵布阵
    DP学习笔记——背包专题
    【思维/构造】D
    【线段树+扫描线】P5490 【模板】扫描线
    【最小生成树】畅通工程再续 HDU
  • 原文地址:https://www.cnblogs.com/xinhua19/p/15055627.html
Copyright © 2020-2023  润新知