登录/注册

esp32 post请求

更多

以下是一个使用ESP32发起POST请求的示例代码(基于Arduino框架):

#include <WiFi.h>
#include <HTTPClient.h>

const char* ssid = "你的WiFi名称";
const char* password = "你的WiFi密码";
const char* serverUrl = "http://example.com/api/post";

void setup() {
  Serial.begin(115200);
  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("\nWiFi已连接");
}

void loop() {
  if (WiFi.status() == WL_CONNECTED) {
    HTTPClient http;

    // 设置请求头
    http.begin(serverUrl);
    http.addHeader("Content-Type", "application/x-www-form-urlencoded");

    // 构造POST数据
    String postData = "temperature=25.6&humidity=60";

    // 发送POST请求
    int httpCode = http.POST(postData);

    if (httpCode > 0) {
      Serial.printf("响应代码: %d\n", httpCode);
      if (httpCode == HTTP_CODE_OK) {
        String response = http.getString();
        Serial.println("服务器响应: " + response);
      }
    } else {
      Serial.printf("请求失败,错误: %s\n", http.errorToString(httpCode).c_str());
    }

    http.end(); // 释放资源
    delay(5000); // 5秒后重新发送
  }
}

关键点说明:

  1. WiFi连接:需先配置并连接WiFi网络
  2. HTTPClient库:Arduino框架自带的HTTP请求库
  3. 请求头设置
    • 常用Content-Type:
      • application/json(JSON格式)
      • application/x-www-form-urlencoded(表单格式)
  4. POST数据构造
    • JSON格式示例:{"sensor":"dht11","value":25}
    • 表单格式示例:key1=value1&key2=value2
  5. 响应处理
    • 检查HTTP状态码(200表示成功)
    • 获取响应内容用http.getString()

发送JSON数据的修改示例:

// 设置JSON请求头
http.addHeader("Content-Type", "application/json");

// 构造JSON数据
String jsonData = "{\"sensor\":\"dht22\",\"temp\":26.5}";

// 发送请求
int httpCode = http.POST(jsonData);

注意事项:

  1. 如果使用HTTPS,需要配置SSL证书
  2. 长时间运行建议添加看门狗和错误重试机制
  3. 服务器地址需要支持外网访问(本地调试可用内网地址)

根据实际需求修改服务器地址、请求头和POST数据内容即可。

ESP32-WROOM-32-N8

ESP32-WROOM-32-N8

2023-04-06 23:33:39

ESP32-S3-MINI-1-N8

ESP32-S3-MINI-1-N8

2023-04-06 23:31:21

ESP32-S3-WROOM-1U-N4

ESP32-S3-WROOM-1U-N4

2023-04-06 23:08:04

乐鑫ESP32-MINI-1参考设计

乐鑫ESP32-MINI-1参考设计乐鑫多年来深耕?AIoT?领域软硬件产品的研发与设计,专注于研发高集成、低功耗、性能卓越、安全稳定、高性价比的无线通信SoC,现已发布ESP8266、

资料下载 华秋商城 2022-10-19 16:13:41

乐鑫ESP32-WROOM-32UE参考设计

乐鑫ESP32-WROOM-32UE参考设计ESP32将天线开关、RFbalun、功率放大器、接收低噪声放大器、滤波器、电源管理模块等功能集于一体。ESP32

资料下载 华秋商城 2022-10-19 16:13:29

乐鑫ESP32-PICO-MINI-02参考设计

乐鑫ESP32-PICO-MINI-02参考设计乐鑫多年来深耕?AIoT?领域软硬件产品的研发与设计,专注于研发高集成、低功耗、性能卓越、安全稳定、高性价比的无线通信SoC,现已发布ESP8266、

资料下载 华秋商城 2022-10-19 16:13:24

esp32-s3_datasheet

esp32s3datasheet

资料下载 bananapi开源硬件 2022-09-05 14:08:27

esp32s下载电路原理图下载

esp32s下载电路原理图下载

资料下载 wudeTang 2021-10-25 09:39:54

ESP32-WROOM-32D-N8

ESP32-WROOM-32D-N8

2023-03-29 22:42:58

ESP32-WROOM-32U-N8

ESP32-WROOM-32U-N8

2023-03-29 22:42:58

ESP32-WROVER-B

ESP32-WROVER-B

2023-03-29 22:36:07

ESP32-S3-WROOM-1-N8R8

ESP32-S3-WROOM-1-N8R8

2023-03-29 21:34:19

ESP32-D0WD

ESP32-D0WD

2023-03-29 17:57:35

ESP32-C3-MINI-1-H4

ESP32-C3-MINI-1-H4

2023-03-29 16:30:23

ESP32-S0WD

ESP32-S0WD

2023-03-28 13:10:29
7天热门专题 换一换
相关标签