1 请求
所有的web请求:都有请求对象和响应对象 (java,go,python)
每个web框架都会有一个请求框架都会有一个响应框架
django:request(每个请求都有一个request)
flask:request 全局的 但也是每个请求一个request 新手三件套
eg:
from flask import Flask,render_template,request
app = Flask(__name__)
app.debug = True
@app.route('/',methods=['GET','POST'])
def index():
# print(request.path)
# print(request.full_path)
print(request.files) # 打印出来的结果是:ImmutableMultiDict([('file', <FileStorage: '1516626930841140.jpeg' ('image/jpeg')>)])
# 保存文件流程
print(type(request.files.get('file')))
with open('test.zip','wb') as f:
for line in request.files.get('file'):
f.write(line)
# from werkzeug.datastructures.file_storage import FileStorage
test()
return 'index'
@app.route('/home')
def home():
print(request.path)
test()
return 'home'
def test():
print(request.args) # get请求的参数
if __name__ == '__main__':
app.run()
附上请求的各类方法:
'''
# 请求相关信息
# request.method 请求的方法
# request.args get请求提交的数据
# request.form post请求提交的数据
# request.values post和get提交的数据总和
# request.cookies 客户端所带的cookie
# request.headers 请求头
# request.path 不带域名,请求路径
# request.full_path 不带域名,带参数的请求路径
# request.url 带域名带参数的请求路径
# request.base_url 带域名请求路径
# request.url_root 域名
# request.host_url 域名
# request.host 服务端地址
# request.files
# obj = request.files['the_file_name']
# obj.save('/var/www/uploads/' + secure_filename(f.filename))
'''
2 响应
#flask的响应 四件套
1 直接返回字符串
2 返回模版:render_template
3 返回重定向:redirect,
4 返回json格式:jsonify
返回响应的示例
@app.route('/',methods=['GET','POST'])
def index():
# return jsonify([{'name':'jack','age':20}])
# return jsonify([{'code':100,'msg':'成功'}])
res = make_response('index') # res是响应对象
# 往响应头写数据
res.headers['abc'] = 'abc'
# 往cookie写数据
res.set_cookie('yyy','xxx',path='/')
# 删除cookie
res.delete_cookie('key')
return res
def test():
print(request.args) # get请求的参数
if __name__ == '__main__':
app.run()
标签:__,请求,get,flask,app,request,响应,print From: https://www.cnblogs.com/abc683871/p/17636380.html