当前位置:网站首页>Flask请求数据获取与响应
Flask请求数据获取与响应
2022-07-27 05:02:00 【qishaoawei】
固定参数与转换器
创建文件夹,里创建py文件
在里面编写
from flask import Flask
app=Flask(__name__)
@app.route('/hello/<int:id>/<string:name>')
def hello(id,name):
return f'接收到的id是{
id}字符串是{
name}'
if __name__ == '__main__':
app.run()
返回响应
转换器形式
外加正则匹配,其中不能出现^$这两个符号
from flask import Flask
app=Flask(__name__)
#1.导入转换器的基类
from werkzeug.routing import BaseConverter
# 2.封装转换器基类并实现regex方法
class PhoneConeverter(BaseConverter):
regex=r'1[3-9][0-9]{9}'
#3.把自定义的转换器挂载到flask对象上面
app.url_map.converters['phone']=PhoneConeverter
#4.使用自定义的转换器
@app.route('/phone/<phone:my_phone>')
def get_phone(my_phone):
return f'当前手机号是{
my_phone}'
if __name__ == '__main__':
app.run()
返回响应
查询参数获取
args: 查询参数
(1).查询参数
from flask import Flask
app=Flask(__name__)
## 查询参数的获取
from flask import request
###http://127.0.0.1:5000/query/?name=ss&age=223
@app.route('/query/')
def query():
#获取所有参数,并转换为dict类型
params=request.args.to_dict() #把不可变类型转换为普通的dict类型
print(params)
name=request.args.get('name') #获取某一个参数
age=request.args.get('age')
return f'当前名字是{
name},年龄是{
age}'
if __name__ == '__main__':
app.run()
返回响应
表单获取参数
from flask import Flask
app=Flask(__name__)
### 表单获取参数
from flask import request
@app.route('/form',methods=['post'])
def form():
name=request.form.get('name')
age=request.form.get('age')
return f'名字是{
name},年龄是{
age}'
if __name__ == '__main__':
app.run()
返回响应
上传文件
from flask import Flask
app=Flask(__name__)
#上传文件
from flask import request
@app.route('/upload',methods=['post'])
def upload():
img=request.files.get('img')
print(img)
#如果不加文件夹默认上传到项目根目录 自定义上传的文件名
img.save('./static/01.png')
return '上传文件'
if __name__ == '__main__':
app.run()
返回响应
模板响应
from flask import Flask
app=Flask(__name__)
#模板响应形式
from flask import render_template
@app.route('/page')
def index():
return render_template('hello.html')
if __name__ == '__main__':
app.run()
在项目内创建文件夹来存放html文件
返回响应
重定向响应形式
from flask import Flask
app=Flask(__name__)
#重定向响应形式
from flask import redirect
@app.route('/jump')
def jump():
return redirect('https://baidu.com/')
if __name__ == '__main__':
app.run()
直接跳转到输入的页面
json数据响应
from flask import Flask
app=Flask(__name__)
#json数据响应
from flask import jsonify
@app.route('/return_json')
def return_json():
data={
'nsme':'zhangsan',
'age':18,
'action':'aaaa'
}
return jsonify(data)
if __name__ == '__main__':
app.run()
返回响应
元祖数据响应
from flask import Flask
app=Flask(__name__)
#元组数据响应
@app.route('/return_json')
def return_json():
#元祖返回三个数据 页面内容 状态码 headers头
return ('hello',400,{
'aaa':'bbb'
})
if __name__ == '__main__':
app.run()
返回响应
make_response()自定义响应
from flask import Flask
app=Flask(__name__)
sponse()自定义响应
from flask import make_response
@app.route('/return_obj')
def return_obj():
# 响应字符串
resp=make_response('hello')
# 响应头键值对
resp.status='404'
# 状态码与状态码提示信息
resp.headers['aaa']='bbb'
# 注意: 响应头键值对与状态码提示信息均为英文, 否则抛异常
return resp
if __name__ == '__main__':
app.run()
返回响应
前端post添加后端模型类数据
要从flask导入json
模型类添加
class GoodView(Resource):
def post(self):
data=request.get_data()
data=json.loads(data)
name=data['name']
print('sssssssssssssssssss',name)
c1=Classify(name=name)
db.session.add(c1)
db.session.commit()
return jsonify({
'code':200,'msg':'添加成功'})
边栏推荐
- B1021 个位数统计
- The interface can automatically generate E and other asynchronous access or restart,
- File processing (IO)
- Raspberry pie RTMP streaming local camera image
- mq设置过期时间、优先级、死信队列、延迟队列
- Idea remote debugging
- Gradio quickly builds ml/dl Web Services
- B1030 完美数列
- Li Hongyi machine learning team learning punch in activity day06 --- convolutional neural network
- JVM Part 1: memory and garbage collection part 10 - runtime data area - direct memory
猜你喜欢

JVM Part 1: memory and garbage collection part 5 -- runtime data area virtual machine stack

2021 OWASP top 4: unsafe design

SQL数据库→约束→设计→多表查询→事务

redis发布订阅模式

Critical path principle

JVM上篇:内存与垃圾回收篇七--运行时数据区-堆

34. Analyze flexible.js

实用小工具: Kotlin 代码片段

JVM Part 1: memory and garbage collection part 10 - runtime data area - direct memory

Mysql速成
随机推荐
ERROR! MySQL is not running, but PID file exists
辗转相除法
Solution to Dlib installation failure
BIO、NIO、AIO区别
用pygame自己动手做一款游戏01
LeetCode刷题之322 Coin Change
conda和pip环境常用命令
通用视图,DRF视图回顾
B1031 check ID card
pytorch 数据类型 和 numpy 数据 相互转化
2021 OWASP top 4: unsafe design
JDBC API details
Three waiting methods of selenium and three processing methods of alert pop-up
B1022 a+b in d-ary
Shell course summary
redis事务
Li Hongyi machine learning team learning punch in activity day03 --- error and gradient decline
JVM Part 1: memory and garbage collection part 9 - runtime data area - object instantiation, memory layout and access location
笔记系列之docker安装Postgresql 14
How to quickly and effectively solve the problem of database connection failure