我使用Falcon实现了一个API,它使用multipart / form将文件上传到我的服务器。当文件很小(~1MB)时,POST请求正常。但是当文件很大(~20MB)时,POST失败并出现以下错误。
有关如何解决此问题的任何反馈意见?
错误:
http:错误:ConnectionError :('连接已中止。',错误(32, '断管'))在对URL进行POST请求时: http://...:49160/api/upload
这是我的请求命令行: 使用httpie:
http -f POST http://111.111.111.111:49160/api/upload filename=video.mp4 file@/home/chacon/video.mp4
这是我的on_post功能:
def on_post(self, req, resp):
in_file = req.get_param('file')
in_video_name = in_file.filename
source_video_path = os.path.join("/tmp", in_video_name)
#working, but fails for large files
with open(source_video_path, 'wb') as source_video_file:
source_video_file.write(in_file.file.read())
谢谢,
卡洛斯
答案 0 :(得分:0)
这是一个枪手工人超时的问题。当您启动gunicorn时,您可以将超时作为参数进行规定,以使其更长并为文件提供足够的时间来完成上传