flask中的request
1、request是什么?
简单来说,它就是flask的封装的一个对象,这个对象包含着前端请求所带的所有信息。既然说它是一个对象,那么它肯定是有一些熟悉,和方法的,下面就来介绍下request里的熟悉,方法
request.form: 里面就是一些表单数据,就是form标签里传递过来的数据request.data: 请求体中的数据request.args: url中携带的数据,就是?后面所携带的,比如?name=zhuchunyurequest.cookies: 携带过来的cookie值request.headers: 请求头中的数据,以key:value的形式request.method: 请求的方法request.json: json格式的数据request.path: 请求的路径(不包含ip地址和端口)request.url: 请求的全路径(包括?后携带的参数)request.base_url: 请求的全路径(不包括?后携带的参数)request.url_root: 请求的IP地址和端口request.files: 上传的文件

解释下为什么request.data 是空的,form标签的数据也是放在请求体中的,它的打印效果就是这样,肯定就是把form标签所传递的数据,放在了request.form 中,并且在request.data 中删除了,这样避免了重复的数据。
下面写一个简单的文件上传的例子吧
from flask import Flask, request
app = Flask(__name__)
@app.route("/upload", methods=["POST"], endpoint="upload")
def upload():
"""文件上传功能"""
file_obj = request.files.get("file")
if file_obj:
# 获取文件的名字,包括后缀
file_name = file_obj.filename
with open(file_name, 'wb') as f:
for line in file_obj:
f.write(line)
return "success !!"
else:
return "faild !!"
if __name__ == "__main__":
app.run(debug=True)
文件我就存放在当前执行文件的同一目录下,你可以自己更改目录位置
额额,还有就是我使用发请求的工具就是postman,很好的一款后端测试工具,这样就不必要在写前端页面的。对了,上面我写上传文件的函数其实还有一种写法。
@app.route("/upload", methods=["POST"], endpoint="upload")
def upload():
"""文件上传功能"""
file_obj = request.files.get("file")
if file_obj:
file_name = file_obj.filename
file_obj.save(file_name)
return "success !!"
else:
return "faild !!"
直接调用flask中文件对象的save方法,把文件名传递进去好了,它默认是保存在当前目录中,如果你想保存在其他目录的话,那么上面的file_name 你可以进行os.path.join 。
request 就先讲到这里,reuqets 还有上下文管理没写,后面再写
flask中的request的更多相关文章
- 第三篇 Flask 中的 request
第三篇 Flask 中的 request 每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前 ...
- Flask中的request模板渲染Jinja以及Session
Flask中的request与django相似介绍几个常用的以后用的时候直接查询即可 1.request from flask import request(用之前先引用,与django稍有不同) r ...
- Flask最强攻略 - 跟DragonFire学Flask - 第三篇 Flask 中的 request 之 先知道有这么个东西
每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前后端的交互 基于HTML + Flask 写一 ...
- 深入flask中的request
缘起 在使用flask的时候一直比较纳闷request是什么原理,他是如何保证多线程情况下对不同请求参数的隔离的. 准备知识 在讲request之前首先需要先理解一下werkzeug.local中的几 ...
- flask中的request和response
1.request 1.request的常用成员 1.scheme : 获取请求方案(协议) 2.method : 获取本期请求的请求方式(重点) 3.args : 获取使用get请求方式提交的数据 ...
- 4,Flask 中的 request
每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前后端的交互 基于HTML + Flask 写一 ...
- Flask 中的 request 之 先知道有这么个东西
每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前后端的交互 基于HTML + Flask 写一 ...
- 第三篇 Flask中的request
每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的,下面我们来了解一下Flask的request中都有什么东西 from flask import request 1 ...
- flask中获取request的参数的方法
request请求总体分为两类: 1.get请求 访问时会在地址栏直接显示参数不安全,且参数大小比较小. 2.post请求 参数不显示在地址栏,一般用户注册.登录都通过post请求完成. flask获 ...
随机推荐
- union、except和intersect查询
1. union联合查询 (合并) select r.room_id from room r union select rp.num from room_type rp 要求表1和表2的查询结果结构 ...
- C# 判断List集合中是否有重复的项
/*在.Net 3.5 以上*/ ).Count() >= ;
- python的返回值
1.返回值的作用 函数并非总是直接显示输出,相反,它可以处理一些数据,并返回一个或一组值.函数返回的值被称为返回值.在函数中,可使用return语句将值返回到调用函数的代码行.返回值让你能够将程序的大 ...
- python数据类型(集合)
一.集合概念 集合是一个数学概念:由一个或多个确定的元素所构成的整体叫做集合. 集合中的元素三个特征: 确定性(元素必须可hash) 互异性(去重)——将一个列表变为集合,就自动去重了 无序性(集合中 ...
- Tomcat部分操作
一 概述 1.Tomcat是什么? Tomcat是Apache软件基金会提供的开源免费的服务器,适用于中小型系统与并发访问用户不是很多的情况. 2.域名 IP是互联网上一台计算机的唯一标识,但IP不容 ...
- setTimeout的实现原理以及setTimeout(0)的使用场景
先看一段代码: var start = new Date(); setTimeout(function(){ var end = new Date(); console.log("Tim ...
- node.js-cancelled because Node.js is unresponsive
今天初学node.js,但是在使用vs code 进行启动调试的时候出现了一个问题 这个报错,一开始我并不知道是什么意思.(而截至我写这个笔记我也还没了解清楚) 大概翻译出来的意思是说 “node.j ...
- Mybatis 的多个数据源
主要思路: DataSource --> SqlSessionFactory --> SqlSessionTemplate 第一方式: 定义多套 DataSource --> Sq ...
- HTML 5入门知识(二)
使用HTML 5结构标签 <article> <article>标签可以在网页中定义独立的内容,包括文章.博客和用户评论等.一个article元素通常有它自己的标题,一般放在一 ...
- 收放卷及张力控制 PID调试技巧
1) 小 Kp( 0.01) , 大 Ti ( 20000ms) 2)逐渐增大Kp, 减小Ti ( 20000ms – 3000ms),避免发生震荡 3)观察I-out 是否在0附近 可能原因:卷径不 ...