http_client: allow derived class to get headers at start
This commit is contained in:
parent
e66866c1fc
commit
0d90123cac
1 changed files with 11 additions and 0 deletions
|
@ -336,6 +336,11 @@ using namespace std;
|
||||||
piece_of_transfer.clear();
|
piece_of_transfer.clear();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
//---------------------------------------------------------------------------
|
||||||
|
virtual bool on_header(const http_response_info &headers)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
inline
|
inline
|
||||||
bool invoke_get(const boost::string_ref uri, std::chrono::milliseconds timeout, const std::string& body = std::string(), const http_response_info** ppresponse_info = NULL, const fields_list& additional_params = fields_list())
|
bool invoke_get(const boost::string_ref uri, std::chrono::milliseconds timeout, const std::string& body = std::string(), const http_response_info** ppresponse_info = NULL, const fields_list& additional_params = fields_list())
|
||||||
|
@ -505,6 +510,12 @@ using namespace std;
|
||||||
m_header_cache.erase(m_header_cache.begin()+pos+4, m_header_cache.end());
|
m_header_cache.erase(m_header_cache.begin()+pos+4, m_header_cache.end());
|
||||||
|
|
||||||
analize_cached_header_and_invoke_state();
|
analize_cached_header_and_invoke_state();
|
||||||
|
if (!on_header(m_response_info))
|
||||||
|
{
|
||||||
|
MDEBUG("Connection cancelled by on_header");
|
||||||
|
m_state = reciev_machine_state_done;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
m_header_cache.clear();
|
m_header_cache.clear();
|
||||||
if(!recv_buff.size() && (m_state != reciev_machine_state_error && m_state != reciev_machine_state_done))
|
if(!recv_buff.size() && (m_state != reciev_machine_state_error && m_state != reciev_machine_state_done))
|
||||||
need_more_data = true;
|
need_more_data = true;
|
||||||
|
|
Loading…
Reference in a new issue