26#include "AstUtil/Logger.hpp"
53 virtual errc_t
onHeaders(
int statusCode,
const std::map<std::string, std::string>& headers) {
return eNoError; }
59 virtual errc_t
onData(
const char* data,
size_t size) = 0;
78 : response_(response), body_() {}
80 errc_t onHeaders(
int statusCode,
const std::map<std::string, std::string>& headers)
override;
81 errc_t onData(
const char* data,
size_t size)
override;
82 void onComplete()
override;
83 void onError(errc_t )
override;
108 errc_t onHeaders(
int statusCode,
const std::map<std::string, std::string>& headers)
override;
109 errc_t onData(
const char* data,
size_t size)
override;
112 uint64_t downloaded()
const {
return downloaded_; }
113 uint64_t total()
const {
return total_; }
126 std::string filepath_;
127 std::string tempPath_;
131 uint64_t downloaded_ = 0;
将流式数据收集到 NetworkResponse 的适配器
定义 NetworkStreamReceiver.hpp:75
将流式响应体写入文件并在写盘过程中报告下载进度
定义 NetworkStreamReceiver.hpp:99
void onError(errc_t) override
发生网络错误
定义 NetworkStreamReceiver.hpp:110
定义 NetworkResponse.hpp:37
流式数据接收器
定义 NetworkStreamReceiver.hpp:44
virtual void onComplete()
数据接收完毕(正常完成时触发)
定义 NetworkStreamReceiver.hpp:66
virtual errc_t onData(const char *data, size_t size)=0
收到一块响应体数据(可能被多次调用)
virtual errc_t onHeaders(int statusCode, const std::map< std::string, std::string > &headers)
收到 HTTP 响应头(在 onData 之前触发一次)
定义 NetworkStreamReceiver.hpp:53
virtual void onError(errc_t error)
发生网络错误
定义 NetworkStreamReceiver.hpp:63
std::function< bool(uint64_t downloaded, uint64_t total)> DownloadProgressCallback
定义 NetworkStreamReceiver.hpp:91