调用http_client.download,下载的文件如无chunk会有问题
1:直接下载到文件,文件大小为0 2:chunk回调给用户,文件下载完后,还会连续读取数据直到超时,然后会回调一个错误 有chunk情况下没测试
chunk格式应该没问题,你说的这个问题我晚点确认一下。
- chunk格式没有问题
- 非chunk格式,数据全部在内存中response.body,数据量大时有问题,body应该考虑分片读取
- chunk格式没有问题
- 非chunk格式,数据全部在内存中response.body,数据量大时有问题,body应该考虑分片读取
我也遇到这个问题,下载大文件,std::bad_alloc异常崩溃
大文件应该用chunked下载呀
大文件应该用chunked下载呀
这是由服务端决定的吧,需要考虑兼容第三方的下载链接,服务端不一定是我们自己开发的 而且用chunked的话,对下载工具来说是文件大小未知的,不知道下载进度,对用户不太友好
以上是我对chunked的理解,不知是否正确
这里可以完善一下,到时候自动识别一下好了,看看服务端需要用哪种协议下载,这个功能这周应该可以搞完。
另外,建议大家使用coro_http_client,这个是协程版的http client,后续主要维护这个新的client了,这次在coro_http_client里把之前的一些问题一并处理掉。
请使用coro_http_client下载