tornado 文件上传
2024-09-06 17:22:32
服务端
def post(self, *args, **kwargs):
# content_type
# filename
# body
file_data=self.request.files
if file_data:
if 'file' in file_data:
if len(file_data['file']) ==1:
filename=file_data['file'][0]['filename']
content_type=file_data['file'][0]['content_type']
body=file_data['file'][0]['body']
my_dir = os.path.join(os.path.dirname(__file__), '..', 'log', 'vulnerability_database')
try:
if os.path.isdir(my_dir) is False:
os.makedirs(my_dir)
my_file = os.path.join(os.path.dirname(__file__), '..', 'log', 'vulnerability_database',filename)
with open(my_file,'wb') as f:
f.write(body)
except Exception as e:
msg_ret = self.get_response('error', '%s 写入失败'%(filename), [])
self.write(msg_ret)
return
ret_msg = writexml(self, filename)
self.write(ret_msg)
return
else:
msg_ret = self.get_response('error', '只能传一个文件', [])
self.write(msg_ret)
else:
msg_ret = self.get_response('error', '没有找到file', [])
self.write(msg_ret)
else:
msg_ret = self.get_response('error', [], [])
self.write(msg_ret)
客户端
import os
# my_file='/Users/xxx/Desktop/2019-08-26_2019-09-01.xml'
my_file='/Users/xxx/Desktop/logo/1.png'
url = 'http://127.0.0.1:7101/xx/xx'
files = {'file': open(my_file, 'rb')}
ret=requests.post(url,files=files)
print(ret.text)
最新文章
- iOS 10 UserNotifications 使用说明
- android studio 中依赖库compile 的一些库的地址
- paip..禁用mmseg 的默认词库. . 仅仅使用自定义词库from数据库.
- 2.servlet 生命周期
- 解决Eclipse中编辑xml文件的智能提示问题,最简单的是第二种方法。
- SqlServer 添加列并赋值
- Java设计模式偷跑系列(六)Singleton模式的建模与实现
- [UWP小白日记-11]在UWP中使用Entity Framework Core(Entity Framework 7)操作SQLite数据库(一)
- 【.NET】加密和解密(.NET)
- SqlServer2008 导入导出txt或Execl数据
- Oracle+PL+SQL从入门到精通.丁士锋.清华大学出版社.2012
- jps报process information unavailable的解决办法
- excel单元格内容连接
- (笔记)Mysql命令create:创建数据库
- MongoDB的”存储过程“
- 很实用且容易忘记的小命令 for Linux(更新中...)
- 使用C#创建windows服务续之使用Topshelf优化Windows服务
- linux系统用户下的crontab任务不执行问题处理
- python2.7下使用logging模块记录日志到终端显示乱码问题解决
- 基于cornerstone.js的cornerstoneWADOImageLoader