qicosmos / rest_rpc

modern C++(C++11), simple, easy to use rpc framework
MIT License
1.66k stars 365 forks source link

支持超大文件传输 #139

Open w136111526 opened 1 month ago

w136111526 commented 1 month ago

请问我想传输超过1个G的文件下载,该怎么修改呢?

qicosmos commented 1 month ago

分段上传就行了。 通过两个api去实现,一个api是告知文件总长度和文件名等信息;一个是分段上传,参数里带文件名和文件二进制数据,如果没有达到总长度就一直传分段,直到达到总长度才关闭文件。

w136111526 commented 1 month ago

上传已经支持超大文件了,做下载文件时,超过1个G的文件,Server直接抛出异常了,需要改哪个地方?

qicosmos commented 1 month ago

你是直接把几个G的文件搞到内存发送的吗?这样简单粗暴不好。

有一个MAX_BUF_LEN控制读数据的最大长度,你把它改到足够大就行了。