Files
uvr67_multical603_wifi_logger/main/wifi_service/http_client.c
2026-06-12 21:45:31 +02:00

104 lines
2.3 KiB
C

/*
* web_client.c
*
* Created on: 4. aug. 2023
* Author: OZ1CM
*/
#include "http_client.h"
#include "esp_log.h"
#define TAG "http_client"
esp_err_t _http_event_handle(esp_http_client_event_t *evt)
{
switch(evt->event_id) {
case HTTP_EVENT_ERROR:
ESP_LOGI(TAG, "HTTP_EVENT_ERROR");
break;
case HTTP_EVENT_ON_CONNECTED:
ESP_LOGI(TAG, "HTTP_EVENT_ON_CONNECTED");
break;
case HTTP_EVENT_HEADER_SENT:
ESP_LOGI(TAG, "HTTP_EVENT_HEADER_SENT");
// printf("%.*s", evt->data_len, (char*)evt->data);
break;
case HTTP_EVENT_ON_HEADER:
ESP_LOGI(TAG, "HTTP_EVENT_ON_HEADER");
printf("%.*s", evt->data_len, (char*)evt->data);
break;
case HTTP_EVENT_ON_DATA:
ESP_LOGI(TAG, "HTTP_EVENT_ON_DATA, len=%d", evt->data_len);
//if (!esp_http_client_is_chunked_response(evt->client)) {
ESP_LOGI(TAG,"Response from server: %s",(char*)evt->data);
//}
break;
case HTTP_EVENT_ON_FINISH:
ESP_LOGI(TAG, "HTTP_EVENT_ON_FINISH");
break;
case HTTP_EVENT_DISCONNECTED:
ESP_LOGI(TAG, "HTTP_EVENT_DISCONNECTED");
break;
default:
break;
}
return ESP_OK;
}
int http_client_sendUrl(http_client_t *inst,char *url){
esp_http_client_config_t config = {
.url = url,
.method = HTTP_METHOD_GET,
//.event_handler = _http_event_handle,
};
inst->client = esp_http_client_init(&config);
esp_err_t err;
err = esp_http_client_perform(inst->client);
// some error logging..
if(err == ESP_OK){
int status_code = esp_http_client_get_status_code(inst->client);
switch (status_code){
case 200:
ESP_LOGI(TAG, "Message sent Successfully");
esp_http_client_cleanup(inst->client);
return 0;
break;
default:
ESP_LOGE(TAG, "Message sent Failed");
esp_http_client_cleanup(inst->client);
return 1;
break;
}
}else{
ESP_LOGE(TAG, "Message sent Failed");
esp_http_client_cleanup(inst->client);
}
// ESP_LOGI(TAG, "URL: %s", inst->client->);
//ESP_LOGI(TAG,"hejmeddig");
//esp_http_client_set_header(inst->client, "Content-Type", "application/x-www-form-urlencoded");
return 1;
}