Flask学习(十) - web请求

作者: MA木易YA | 来源:发表于2018-11-22 20:57 被阅读0次

    GET/POST

    • 使用get/post方法需要事先在函数中引入request
    from flask import request
    

    get:

    1. 使用场景:仅用于向服务器获取数据,没有对服务器产生影响
    2. 参数在url中显示,以?分隔跟在url之后
    3. 获取参数:request.args
    #url = "www.baidu.com/?key=hello"
    
    key = request.args.get('key')
    

    post:

    1. 要对服务器产生影响,例如注册登录
    2. 参数以form data形式发送给服务器
    3. 获取参数:request.form
    key = request.form.get('key')
    
    • 注意
         post请求一定得在表单中设置name属性,才能从request获取到值,并且视图函数中需要设置请求方法,不然默认为GET会抛出异常

    g全局属性

    • 使用g属性需要事先在函数中引入g模块
    from flask import g
    
    
    #设置和调用
    g.key = "hello"
    
    1. 一次请求的所有地方皆可使用,类似于设置全局属性,设置的属性只要是在当前请求中,任意位置都可以通过g.param_name获取
    2. 专门用于保存用户数据

    钩子函数

    1. before_request
    • 在请求之前执行
    • 在视图函数之前执行
    • 只是一个装饰器,用于设置函数
    @before_request
    def index():
        function_content
    
    1. context_processor
    • 上下文处理器应该返回一个字典,字典的key会被模板当做变量渲染
    • 上下文处理器中返回的字典所有页面都可用,例如在index函数中返回了{user:hello},则此数据在渲染的所有页面皆可使用
    @context_processor
    def index():
        function_content
    

    相关文章

      网友评论

        本文标题:Flask学习(十) - web请求

        本文链接:https://www.haomeiwen.com/subject/ryjrqqtx.html