Rework the data streaming

This commit is contained in:
Chunting Gu
2019-08-12 17:32:29 +08:00
parent 4f9263048f
commit 66cab76ce6
7 changed files with 123 additions and 168 deletions
+8 -4
View File
@@ -11,17 +11,18 @@ class Response;
class ResponseParser : public Parser {
public:
ResponseParser();
ResponseParser() = default;
~ResponseParser() override = default;
bool Init(Response* response, bool stream = false);
void Init(Response* response, bool stream = false);
void set_ignroe_body(bool ignroe_body) {
ignroe_body_ = ignroe_body;
}
private:
void CreateBodyHandler() override;
// Parse HTTP start line; E.g., "HTTP/1.1 200 OK".
bool ParseStartLine(const std::string& line) override;
@@ -30,7 +31,10 @@ private:
private:
// The result response message.
Response* response_;
Response* response_ = nullptr;
// Data streaming or not.
bool stream_ = false;
// The response for HEAD request could also have `Content-Length` header,
// set this flag to ignore it.