您当前的位置: 首页 >  flask

Flask(4):Flask中的request请求+COOKIE和SESSION+FILE文件上传

发布时间:2019-10-15 21:05:04 ,浏览量:6

文章目录
  • 一、Flask中请求的种类
  • 二、Django和Flask获取get和post请求的对比
  • 三、Flask的file上传
  • 四、Flask中的cookie
    • 1.了解Django中的cookie
    • 2.使用cookie
  • 五、Flask中的session
    • 1.了解Django中的session
    • 2.配置
    • 2.使用session
  • 六、cookie和session的区别
一、Flask中请求的种类

1.需要导入的模块

from flask import request

2.request的常用属性 在这里插入图片描述

二、Django和Flask获取get和post请求的对比 方式 Django Flask 查看方式 request.method request.method get请求 request.GET.get() request.args.get() post请求 request.POST.get() request.form.get()

举例:flask获取post请求

获取get请求方式基本同Django,但是获取post消息需要注意:flask默认不支持post,需要在路由处自己加入,推荐最好也加入get请求 在这里插入图片描述 例如: 在这里插入图片描述

三、Flask的file上传

1.文件属性

方法 意义 file.filename 获取文件名字 file .content_length 文件长度 file.content_type 文件类型 file.headers 请求头部 file.mimetype 内容类型 file.mimetype_params 类型的参数 file.name 字段名字

2.举例 例如我们在前端页面使用post表单写了一个上传文件的input

在这里插入图片描述 后端获取,并将获得的数据存入项目某文件

@app.route('/update_userinfo/', methods=['post', 'get']) def update_userinfo(): if request.method == 'POST': # 获取文件,此时是图片 photo = request.files.get('photo') #----------------存入图片至本地 file_name=photo.feilename#获取图片名字 photo_path=os.path.join('img',file_name)#将图片路径拼接,img/1.jpg path=os.path.join(STATIC_PATH,photo_path) photo.save(path) return render_template('update_userinfo.html', **locals()) 
四、Flask中的cookie 1.了解Django中的cookie

知识链接:https://blog.csdn.net/qq_40558166/article/details/101107225

2.使用cookie

1.设置cookie

①导包,使用重定向 from flask import redirect
	response=redirect('/index') ②设置cookie
	response.set_cookie('key',value) 

2.获取cookie

key=request.cookies.get('key') 

3.删除cookie

①导包,使用重定向 from flask import redirect
	response=redirect('/login') ②删除cookie
	response.delete_cookie("key") 
五、Flask中的session 1.了解Django中的session

知识链接:https://blog.csdn.net/qq_40558166/article/details/101107225

2.配置
  • django中settings.py 中有secretkey session_id session内容
  • flask中没有,需要配置,因为需要session需要加密,因此必须配置

配置方法:

from flask import Flask, render_template

app = Flask(__name__, template_folder='templates') app.secret_key='asdaaasfa' # 随便写 
2.使用session

flask中的session类似一个字典,因此可以使用字典中的一些方法 1.设置session

from flask import session
session["key"] = "value" 

2.获取session

key=session.get('key') 

3.删除session

在这里插入图片描述

六、cookie和session的区别

cookie和session都是会话机制

  • Cookie
    • 优点:成本低,能够解决浏览器访问无状态的问题
    • 缺点:安全性低,cookie 下发到用户,放在用户本地
  • session
    • 优点:解决了cookie安全性的问题,
    • 缺点:成本高,需要放在服务器上面,通常放在数据库中,flask放在内存中
关注
打赏
1688896170
查看更多评论

暂无认证

  • 6浏览

    0关注

    108697博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0632s