当前位置:网站首页>Flask的传参以及返回的响应
Flask的传参以及返回的响应
2022-07-27 05:02:00 【pink_Pig___】
传参
- 固定参数
from flask import Flask
app.Flask(__name__)
# <int:整型>/<string:字符串>/<默认字符串>
@app.route('/hello/<int:id>')
def hello(id)
return f'接收到的ID为:{
id}'
if __name__ == '__main__':
app.run()
- 自定义转换器
from flask import Flask
from flask import BaseConverter
app = Flask(__name)
# 自定义转换器
class PhoneConverter(BaseConverter):
# regex固定变量
regex = r'1[3-9][0-9]{9}'
app.url_map.converters['phone'] = PhoneConverter
@app.route('/phone/<phone:my_phone>'
def get_phone(my_phone):
return f'手机号为{
my_phone}'
if __name__ == '__main__':
app.run()
- 查看传递参数’get’
from flask import Flask
from flask import request
# 查看传递参数
@app.route('/query')
def query():
params = request.args.to_dict() # 把不可变字典转换为普通字典
print(params)
name = request.args['name']
age = request.args.get('age')
return f'当前名字为:{
name}, 年龄为:{
age}'
if __name__ == '__main__':
app.run()
- 表单的获取 ‘post’
from flask import Flask
from flask import request
@app.route('/form', methods=['post'])
def form():
name = request.form.get('name')
age = request.form.get('age')
return f'name:{
name}, age:{
age}'
if __name__ == '__main__':
app.run()
- 上传文件
from flask import Flask
from flask import request
@app.route('/upload', methods=['post'])
def upload():
img = request.files.get('img')
print(img)
# 保存到当前目录下的static里
img.save('./static/01.png')
return '上传成功'
if __name__ == '__main__':
app.run()
- 其他参数
from flask import Flask
from flask import request
@app.route('/other')
def other():
print(request.headers)
print(request.method)
print(request.url)
return '其他参数'
if __name__ == '__main__':
app.run()
响应的返回
- 返回HTML页面的数据
from flask import Flask
from flask import render_template
app.Flask(__name__)
@app.route('/page')
def page():
return render_template('hello.html')
if __name__ == '__main__':
app.run()
- 返回响应时跳转页面
from flask import Flask
from flask import redirect
app.Flask(__name__)
@app.route('/jump')
def jump():
return redirect('https://www.baidu.com')
if __name__ == '__main__':
app.run()
- 返回字典
from flask import Flask
from flask import jsonify
app.Flask(__name__)
@app.route('/return_json')
def return_json():
data = {
'name': 'zhangsan',
'age': 18,
'action': ['吃', '睡觉', '上厕所']
}
return jsonify(data)
if __name__ == '__main__':
app.run()
- 返回元组
from flask import Flask
app.Flask(__name__)
@app.route('/return_json')
def return_json():
return ('hello', 5400,{
'aaa': 'bbbb'})
if __name__ == '__main__':
app.run()
- 自定义响应对象
from flask import Flask
from flask import make_response
app.Flask(__name__)
@app.route('/return_json')
def return_obj():
resp = make_response('hello')
resp.status = '404'
resp.headers['aaa'] = 'bbb'
return resp
if __name__ == '__main__':
app.run()
边栏推荐
- Laozi cloud and Fuxin Kunpeng achieved a major breakthrough in 3D ofd 3D format documents for the first time
- ERP system brand
- JVM Part 1: memory and garbage collection -- runtime data area 4 - program counter
- 如何快速有效解决数据库连接失败问题
- B1030 完美数列
- 辗转相除法
- JVM Part 1: memory and garbage collection part 14 -- garbage collector
- JVM Part 1: memory and garbage collection part 9 - runtime data area - object instantiation, memory layout and access location
- 整合SSM
- Localdatetime and zoneddatetime
猜你喜欢
随机推荐
2、 MySQL advanced
B1025 反转链表*******
如何快速有效解决数据库连接失败问题
MQ set expiration time, priority, dead letter queue, delay queue
MQ FAQ
Enumeration class implements singleton mode
Solution to Dlib installation failure
B1023 group minimum
Explore the mysteries of the security, intelligence and performance of the universal altek platform!
Inspiration from "flying man" Jordan! Another "arena" opened by O'Neill
整合SSM
接收方设置并发量和限流
Two dimensional array summation exercise
Static and final keyword learning demo exercise
JVM上篇:内存与垃圾回收篇十二--StringTable
素数筛选(埃氏筛法,区间筛法,欧拉筛法)
集合框架的使用
Find the number of combinations (the strongest optimization)
弹球小游戏
B1022 a+b in d-ary









