flask请求响应

7.请求响应

   from flask import Flask
    from flask import request
    from flask import render_template
    from flask import redirect
    from flask import make_response

    app = Flask(__name__)


    @app.route('/login.html', methods=['GET', "POST"])
    def login():

        # 请求相关信息
        # request.method  
        #request.POST['xxx'] 与 request.GET['xxx'] 的内容不可修改,内部源码做了一个断言
        #如果修改了就引起报错,如果想要修改的话需要把它转成字典或者深拷贝。

        # request.args     
        # request.form
        # request.values  (args,form)
        # request.cookies
        # request.headers
        # request.path    根路径
        # request.full_path    域名后的全路径
        # request.script_root  &nbsp
        # request.url     全路径
        # request.base_url  基础路径
        # request.url_root    基础路径
        # request.host_url   基础路径
        # request.host   无http的基础路径
        # request.files
        # obj = request.files['the_file_name']
        # obj.save('/var/www/uploads/' + secure_filename(f.filename))

        # 响应相关信息
        # return "字符串"
        # return render_template('html模板路径',**{})
        # return redirect('/index.html')
        #return jsonify({'k1':'v1'})

        # response = make_response(render_template('index.html'))
        # response是flask.wrappers.Response类型
        # response.delete_cookie('key')
        # response.set_cookie('key', 'value')
        # response.headers['X-Something'] = 'A value'
        # return response
        return "内容"

    if __name__ == '__main__':
        app.run()

8.session

除请求对象之外,还有一个 session 对象。它允许你在不同请求间存储特定用户的信息。它是在 Cookies 的基础上实现的,并且对 Cookies 进行密钥签名要使用会话,你需要设置一个密钥。 (app.session_interface对象)

设置:session['username']'xxx'
删除:session.pop('username', None)
分析

入口:app.session_interface
session modify 在session对象set_item和delete_item的内置方法中,设置一个flag只要被调用了 就把session.modified 设置为true,然后把原cookie删除了再重新赋值。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值