/* ESP32 HTTP Client example
https://wokwi.com/projects/384757860096897025
This project makes an HTTP GET request to https://www.google.com/search?q=arduino every 5 seconds.
If you want to request from a local server you can uncomment and configure getLocal() but you need the Wokwi IoT Gateway, as explained here:
https://docs.wokwi.com/guides/esp32-wifi#the-private-gateway
Note that the IoT Gateway requires a Wokwi Club subscription.
To purchase a Wokwi Club subscription, go to https://wokwi.com/club
*/
#include <WiFi.h>
#include <WiFiClient.h>
#include <HTTPClient.h>
#define WIFI_SSID "Wokwi-GUEST"
#define WIFI_PASSWORD ""
#define WIFI_CHANNEL 6
int lastRequest = 0;
void setup(void) {
Serial.begin(9600);
WiFi.begin(WIFI_SSID, WIFI_PASSWORD, WIFI_CHANNEL);
Serial.print("Conectando no WiFi ");
Serial.print(WIFI_SSID);
while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.println(" Conectado!");
Serial.print("IP: ");
Serial.println(WiFi.localIP());
}
void getLocal() {
const char* url = "http://dreamlo.com/lb/I2_MHWbf2EmpshnFG9EbmwQR4DyTNwfk6x2W46X9XOkw/add/RenanRafael/22";
//const char* url = "https://host.wokwi.internal:45455/weatherforecast"; // Change this url to request from your local server.
get(url);
}
void get(const char* url) {
Serial.printf("Enviando uma requisição %s\n", url);
HTTPClient http;
http.begin(url);
int res = http.GET();
if (res > 0) {
Serial.print("Codigo de resposta HTTP: ");
Serial.println(res);
String payload = http.getString();
Serial.println(payload);
} else {
Serial.print("Erro: ");
Serial.println(res);
}
// Free resources
http.end();
}
void loop(void) {
if (millis() - lastRequest > 50000) {
if (WiFi.status() == WL_CONNECTED) {
getLocal();
lastRequest = millis();
} else {
Serial.println("WiFi não conectado");
}
}
}