16_Arduino-ESP32_HTTP Client

138 阅读1分钟

1_HTTP Client


1.1_HTTP GET

#include <Arduino.h>

#include <WiFi.h>
#include <WiFiMulti.h>

#include <HTTPClient.h>

WiFiMulti wifiMulti;

void setup() {

    Serial.begin(115200);

    for(uint8_t t = 4; t > 0; t--) {
        Serial.printf("[SETUP] WAIT %d...\n", t);
        Serial.flush();
        delay(1000);
    }

    wifiMulti.addAP("SSID", "PASSWORD");

}

void loop() {
    //等待WiFi连接
    if((wifiMulti.run() == WL_CONNECTED)) {

        HTTPClient http;

        Serial.print("[HTTP] begin...\n");
        //配置traged server和url
        //http.begin("https://www.howsmyssl.com/a/check", ca); //HTTPS
        http.begin("http://example.com/index.html"); //HTTP

        Serial.print("[HTTP] GET...\n");
        // 开始连接并发送HTTP标头
        int httpCode = http.GET();

        // httpCode出错时将为负数
        if(httpCode > 0) {
            // 已发送HTTP标头并且已处理服务器响应标头
            Serial.printf("[HTTP] GET... code: %d\n", httpCode);

            //在服务器上找到的文件
            if(httpCode == HTTP_CODE_OK) {
                String payload = http.getString();
                Serial.println(payload);
            }
        } else {
            Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
        }

        http.end();
    }

    delay(5000);
}

1.2_HTTP POST