1
0
mirror of https://github.com/esphome/esphome.git synced 2025-03-13 22:28:14 +00:00

[http_request] debugging in get_response_header

This commit is contained in:
Craig Andrews 2025-02-19 17:35:35 -05:00
parent 0f5cda9824
commit 3f7e4ddfa5
No known key found for this signature in database
GPG Key ID: 581BAFE062A38CB6
2 changed files with 22 additions and 14 deletions

View File

@ -20,5 +20,26 @@ void HttpRequestComponent::dump_config() {
}
}
std::string HttpContainer::get_response_header(const std::string &header_name) {
ESP_LOGD(TAG, "Entered get_response_header");
auto response_headers = this->get_response_headers();
auto header_name_lower_case = str_lower_case(header_name);
if (response_headers.count(header_name_lower_case) == 0) {
ESP_LOGD(TAG, "No header with name %s found", header_name_lower_case.c_str());
return "";
} else {
auto values = response_headers[header_name_lower_case];
if (values.empty()) {
ESP_LOGD(TAG, "header with name %s returned an empty list, this shouldn't happen",
header_name_lower_case.c_str());
return "";
} else {
ESP_LOGD(TAG, "Header with name %s found", header_name_lower_case.c_str());
ESP_LOGD(TAG, "Header with name %s found with value %s", header_name_lower_case.c_str(), values.front().c_str());
return values.front();
}
}
}
} // namespace http_request
} // namespace esphome

View File

@ -103,20 +103,7 @@ class HttpContainer : public Parented<HttpRequestComponent> {
*/
const std::map<std::string, std::list<std::string>> &get_response_headers() const { return this->response_headers_; }
std::string get_response_header(const std::string &header_name) {
auto response_headers = this->get_response_headers();
auto header_name_lower_case = str_lower_case(header_name);
if (response_headers.count(header_name_lower_case) == 0) {
return "";
} else {
auto values = response_headers[header_name_lower_case];
if (values.empty()) {
return "";
} else {
return values.front();
}
}
}
std::string get_response_header(const std::string &header_name);
protected:
size_t bytes_read_{0};