Commit ca54cb9d by xiongziliang

解决断点续传返回416的问题

parent ae4c7240
......@@ -34,6 +34,11 @@ void HttpDownloader::startDownload(const string& url, const string& filePath,boo
}
if(bAppend){
auto currentLen = ftell(_saveFile);
if(currentLen){
//最少续传一个字节,怕遇到http 416的错误
currentLen -= 1;
fseek(_saveFile,-1,SEEK_CUR);
}
addHeader("Range", StrPrinter << "bytes=" << currentLen << "-" << endl);
}
setMethod("GET");
......
......@@ -16,7 +16,7 @@ namespace Http {
class HttpDownloader: public HttpClientImp {
public:
typedef std::shared_ptr<HttpDownloader> Ptr;
typedef std::function<void(int code,const char *errMsg,const char *filePath)> onDownloadResult;
typedef std::function<void(ErrCode code,const char *errMsg,const char *filePath)> onDownloadResult;
HttpDownloader();
virtual ~HttpDownloader();
//开始下载文件,默认断点续传方式下载
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论