🧾 ماموریت ۹۱: API با JSON

با ArduinoJson یه JsonDocument بساز، کلیدها را پر کن، serializeJson کن و با نوع application/json بفرست.

سطح: چالشی ⭐⭐⭐ · مود: آردوینو — با کد

هدف‌ها

قطعه‌های لازم

▶ همین ماموریت را در شبیه‌ساز امتحان کن
💡 گیر کردی؟ داخل شبیه‌ساز راهنما را ببین، و اگر باز هم نشد دکمه‌ی «برام حلش کن» مدار را برایت می‌چیند تا ببینی چطور کار می‌کند.

جواب کامل

اول خودت امتحان کن! بعد جواب را ببین 👀

سیم‌کشی

  1. ESP32 DevKit (VCC33) ⟷ پتانسیومتر (VCC)
  2. ESP32 DevKit (D34) ⟷ پتانسیومتر (WIPER)
  3. پتانسیومتر (GND) ⟷ ESP32 DevKit (GND1)

کد

// ESP32 JSON API: GET /api/status answers {"pot":..,"uptime":..}
#include <WiFi.h>
#include <WebServer.h>
#include <ArduinoJson.h>

WebServer server(80);
const int POT = 34;

void setup() {
  Serial.begin(115200);
  WiFi.begin("MyHome", "12345678");
  while (WiFi.status() != WL_CONNECTED) delay(200);
  Serial.println(WiFi.localIP());

  server.on("/api/status", []() {
    JsonDocument doc;
    doc["pot"] = analogRead(POT);
    doc["uptime"] = millis() / 1000;
    String out;
    serializeJson(doc, out);
    server.send(200, "application/json", out);
  });
  server.begin();
}

void loop() {
  server.handleClient();
}

ماموریت‌های مشابه

📊

ماموریت ۹۰: صفحه‌ی وب با مقدار سنسور

⚡

ماموریت ۹۲: مقدار زنده با WebSocket

🌐

ماموریت ۸۹: کلید LED در صفحه‌ی وب

📡

ماموریت ۹۳: انتشار با MQTT

📚 برای یاد گرفتن پایه‌ها سری به دوره‌ی آموزش آردوینو بزن · 🎯 همه‌ی ماموریت‌ها