当前位置:网站首页>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':'添加成功'})
边栏推荐
- 通用视图,DRF视图回顾
- Prime number screening (Ehrlich sieve method, interval sieve method, Euler sieve method)
- 用户的管理-限制
- JVM上篇:内存与垃圾回收篇五--运行时数据区-虚拟机栈
- Flask登录实现
- 数据库迁移报错解决
- Li Hongyi machine learning team learning punch in activity day02 --- return
- 2022 Zhengzhou light industry Freshmen's competition topic - I won't say if I'm killed
- Bean's life cycle & dependency injection * dependency auto assembly
- MQ set expiration time, priority, dead letter queue, delay queue
猜你喜欢

The concept of cloud native application and 15 characteristics of cloud native application

2021 OWASP top 5: security configuration error

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

接收方设置并发量和限流

pyside2____ 1. Installation and case listing

BIO、NIO、AIO区别

B1021 single digit statistics

Alphabetic order problem

JVM Part 1: memory and garbage collection part 3 - runtime data area - overview and threads

torch中乘法整理,*&torch.mul()&torch.mv()&torch.mm()&torch.dot()&@&torch.mutmal()
随机推荐
The interface can automatically generate E and other asynchronous access or restart,
注册功能实现
Find the number of combinations (the strongest optimization)
实用小工具: Kotlin 代码片段
Graph cuts learning
求组合数(最强优化)
如何查看导师的评价
Li Hongyi machine learning team learning punch in activity day04 - Introduction to deep learning and back propagation mechanism
JVM Part 1: memory and garbage collection part 10 - runtime data area - direct memory
SQL database → constraint → design → multi table query → transaction
如何快速上手强化学习?
B1024 科学计数法
Machine learning overview
2021 OWASP top 5: security configuration error
B1031 查验身份证
Card drawing program simulation
蓝图-类视图方法
[CSAPP] Application of bit vectors | encoding and byte ordering
消息可靠性处理
Create datasource using Druid connection pool