mirror of
https://github.com/esphome/esphome.git
synced 2024-11-28 12:46:22 +01:00
[http_request] Always return defined server response status (#7689)
This commit is contained in:
parent
858d97ccef
commit
88627095fb
@ -116,8 +116,7 @@ std::shared_ptr<HttpContainer> HttpRequestArduino::start(std::string url, std::s
|
|||||||
if (container->status_code < 200 || container->status_code >= 300) {
|
if (container->status_code < 200 || container->status_code >= 300) {
|
||||||
ESP_LOGE(TAG, "HTTP Request failed; URL: %s; Code: %d", url.c_str(), container->status_code);
|
ESP_LOGE(TAG, "HTTP Request failed; URL: %s; Code: %d", url.c_str(), container->status_code);
|
||||||
this->status_momentary_error("failed", 1000);
|
this->status_momentary_error("failed", 1000);
|
||||||
container->end();
|
// Still return the container, so it can be used to get the status code and error message
|
||||||
return nullptr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int content_length = container->client_.getSize();
|
int content_length = container->client_.getSize();
|
||||||
|
@ -172,8 +172,7 @@ std::shared_ptr<HttpContainer> HttpRequestIDF::start(std::string url, std::strin
|
|||||||
|
|
||||||
ESP_LOGE(TAG, "HTTP Request failed; URL: %s; Code: %d", url.c_str(), container->status_code);
|
ESP_LOGE(TAG, "HTTP Request failed; URL: %s; Code: %d", url.c_str(), container->status_code);
|
||||||
this->status_momentary_error("failed", 1000);
|
this->status_momentary_error("failed", 1000);
|
||||||
esp_http_client_cleanup(client);
|
return container;
|
||||||
return nullptr;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int HttpContainerIDF::read(uint8_t *buf, size_t max_len) {
|
int HttpContainerIDF::read(uint8_t *buf, size_t max_len) {
|
||||||
|
@ -106,7 +106,7 @@ uint8_t OtaHttpRequestComponent::do_ota_() {
|
|||||||
|
|
||||||
auto container = this->parent_->get(url_with_auth);
|
auto container = this->parent_->get(url_with_auth);
|
||||||
|
|
||||||
if (container == nullptr) {
|
if (container == nullptr || container->status_code != 200) {
|
||||||
return OTA_CONNECTION_ERROR;
|
return OTA_CONNECTION_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ void HttpRequestUpdate::setup() {
|
|||||||
void HttpRequestUpdate::update() {
|
void HttpRequestUpdate::update() {
|
||||||
auto container = this->request_parent_->get(this->source_url_);
|
auto container = this->request_parent_->get(this->source_url_);
|
||||||
|
|
||||||
if (container == nullptr) {
|
if (container == nullptr || container->status_code != 200) {
|
||||||
std::string msg = str_sprintf("Failed to fetch manifest from %s", this->source_url_.c_str());
|
std::string msg = str_sprintf("Failed to fetch manifest from %s", this->source_url_.c_str());
|
||||||
this->status_set_error(msg.c_str());
|
this->status_set_error(msg.c_str());
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user