from flask import Flask, request, jsonify, Response, make_response from werkzeug.utils import secure_filename import os app = Flask(__name__) print('创建app:', __name__) @app.route('/test', methods=['GET', 'POST', 'PUT', 'DELETE']) def test(): # 获取请求方法 http_method = request.method print('请求方法:', http_method) # 获取查询参数 print('args:', request.args.to_dict()) # 表单数据 print('form:', request.form.to_dict()) # 文件 save_path = './uploads' if not os.path.exists(save_path): os.makedirs(save_path) # 获取所有字段名 user_file_field = request.files.keys() for field_name in user_file_field: # 注意每个字段名有可能包含多个不同的文件 user_file_list = request.files.getlist(field_name) print(f'{field_name}字段包含{len(user_file_list)}个文件') for file in user_file_list: # 保存路径 f_name = secure_filename(field_name + file.filename) # 安全处理 f_path = os.path.join(save_path, f_name) # 也可以筛选拓展名和处理用户的文件名称 print('保存文件:', f_path) # 保存文件 file.save(f_path) # { # 'method': request.method, # 'args': dict(request.args), # 'form': dict(request.form), # 'files': {name: file.filename for name, file in request.files.items()}, # 'json': request.json, # 'headers': dict(request.headers), # 'content_type': request.content_type # } return {"message":"received"}, 200, {'Content-Type': 'application/json; charset=utf-8'} if __name__ == '__main__': app.run(port=5000, debug=True)