91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ESP32開發(fā)板創(chuàng)建同步WebServer網頁服務器

jf_88434166 ? 來源:jf_88434166 ? 作者:jf_88434166 ? 2026-01-30 11:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

ESP32 內置了 Wi-Fi 功能,能夠作為網頁服務器(Web Server)向網絡中的其他設備提供服務。通過在 ESP32 上運行網頁服務器,可以創(chuàng)建基于瀏覽器的用戶界面,用于監(jiān)控傳感器數據或控制設備狀態(tài),是實現物聯網IoT)應用的基礎功能之一。

WebServer 庫簡介

Arduino-ESP32 核心庫內置了 WebServer.h,它提供了一套簡潔的 API 來快速構建 Web Server 輕量級的 HTTP 服務器。通過注冊路由(URL 路徑)及回調函數,實現請求分發(fā)與應答。適用于絕大多數典型 IOT 項目的本地網頁交互。

選擇建議

使用同步WebServer當:
輕量級,入門和資源受限場景,無需額外安裝;
項目簡單,只有一個用戶;
請求處理非??焖伲?100ms);
不需要同時處理其他重要任務;
內存資源非常有限;

使用異步WebServer當:
對大流量/高并發(fā)等復雜場景,需要高性能,服務多個用戶;
有耗時操作(文件操作、網絡請求);
需要實時功能(WebSocket);
需要處理上傳/下載;
系統(tǒng)有其他重要任務需要及時響應;

同步阻塞模型,服務器一次只能處理一個客戶端請求,必須等待當前請求完全處理完成后,才能處理下一個請求。

以下為同步WebServer與異步WebServer對比
在這里插入圖片描述

基礎網頁服務 (STA 模式)

在 STA 模式下創(chuàng)建一個基礎的網頁服務器,用于顯示一個包含"Hello World!"的靜態(tài)頁面。

#include < WiFi.h >
#include < WebServer.h >

const char *ssid = "Maker";         // 替換為你的 Wi-Fi 名稱
const char *password = "12345678";  // 替換為你的 Wi-Fi 密碼

WebServer server(80);

void setup() {
  Serial.begin(115200);
  delay(10);

  // 連接 WiFi 網絡
  Serial.print("Connecting to ");
  Serial.println(ssid);

  WiFi.begin(ssid, password);

  // 等待連接成功
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println();
  Serial.println("WiFi connected.");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());

  // 配置路由和啟動服務器
  server.on("/", handleRoot);
  server.begin();
}

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

// 處理根路徑請求
void handleRoot() {
  server.send(200, "text/html", generateHTML());
}

// 生成 HTML 頁面內容
String generateHTML() {
  String htmlContent = "< !DOCTYPE html > < html >n";
  htmlContent += "< head >< meta charset="utf-8" name="viewport" content="width=device-width" >n";
  htmlContent += "< title >ESP32S3 Test< /title >n";
  htmlContent += "< /head >n";
  htmlContent += "< h1 >Hello World!< /h1 >n";
  htmlContent += "< p >Hello from ESP32< /p >n";
  htmlContent += "< /body >n";
  htmlContent += "< /html >n";
  return htmlContent;
}

代碼解釋?
#include :引入 Web Server 庫,用以在 ESP32 上創(chuàng)建 HTTP 服務器。

WebServer server(80);:創(chuàng)建一個服務器對象,監(jiān)聽標準的 HTTP 端口 80。80 是 HTTP 協(xié)議的默認端口。

server.on("/", handleRoot);:注冊路由處理函數。當客戶端訪問根路徑"/"時,調用 handleRoot() 函數。

server.begin();:啟動服務器,開始監(jiān)聽客戶端的連接請求。

server.handleClient();:在 loop() 中持續(xù)調用,處理傳入的客戶端請求。

handleRoot():這是一個自定義的回調函數,用于處理特定路徑的請求。

server.send(statusCode, contentType, content);:向客戶端發(fā)送一個 HTTP 響應。向客戶端瀏覽器返回包含 "Hello World" 的簡單 HTML 頁面。
200:HTTP 狀態(tài)碼,200 OK 表示請求成功。
"text/html":MIME 類型,告知瀏覽器響應內容是 HTML 文本。
generateHTML():函數返回的字符串,即網頁的實際內容。
generateHTML():一個輔助函數,將 HTML 代碼拼接成一個 String 對象,返回包含完整 HTML 結構的字符串。

運行結果?

將代碼中的 ssid 和 password 修改為目標 Wi-Fi 網絡的名稱和密碼后上傳。串口監(jiān)視器將顯示連接過程和獲取到的 IP 地址。在同一局域網的設備上打開瀏覽器,輸入顯示的 IP 地址,即可看到"Hello World!"頁面。
在這里插入圖片描述
在這里插入圖片描述

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 服務器
    +關注

    關注

    14

    文章

    10256

    瀏覽量

    91521
  • 開發(fā)板
    +關注

    關注

    26

    文章

    6293

    瀏覽量

    118235
  • WebServer
    +關注

    關注

    0

    文章

    12

    瀏覽量

    3458
  • ESP32
    +關注

    關注

    26

    文章

    1195

    瀏覽量

    21773
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    ESP32-P4系列】WT9932P4-MINI開發(fā)板上手指南

    開發(fā)板介紹ESP32-P4-MINI開發(fā)板是深圳市啟明云端有限公司推出的,基于WT0132P4-A1核心設計的多媒體開發(fā)板。WT0132P
    的頭像 發(fā)表于 02-12 18:16 ?146次閱讀
    【<b class='flag-5'>ESP32</b>-P4系列】WT9932P4-MINI<b class='flag-5'>開發(fā)板</b>上手指南

    ESP32-P4系列】WT99P4C5-S1開發(fā)板上手指南

    ??點擊上方名片關注了解更多開發(fā)板簡介1開發(fā)板介紹WT99P4C5-S1開發(fā)板是深圳市啟明云端有限公司推出的,基于WT0132P4-A1核心設計的多媒體
    的頭像 發(fā)表于 02-12 18:16 ?95次閱讀
    【<b class='flag-5'>ESP32</b>-P4系列】WT99P4C5-S1<b class='flag-5'>開發(fā)板</b>上手指南

    ESP32-C61】WT9932C61-TINY開發(fā)板規(guī)格書

    開發(fā)板介紹WT9932C61?TINY是一款專為輕量化物聯網開發(fā)設計的迷你開發(fā)板,核心基于樂鑫ESP32?C61芯片,搭載啟明云端WT0132C61?S5模組,整體尺寸僅23×38mm
    的頭像 發(fā)表于 02-11 18:04 ?476次閱讀
    【<b class='flag-5'>ESP32</b>-C61】WT9932C61-TINY<b class='flag-5'>開發(fā)板</b>規(guī)格書

    ESP32-C5系列】WT9932C5-TINY開發(fā)板規(guī)格書

    1開發(fā)板介紹WT9932C5-TINY是一款專為輕量化物聯網開發(fā)設計的迷你開發(fā)板,核心基于樂鑫ESP32-C5芯片,搭載啟明云端WT0132C5-S5模組,整體尺寸僅23×38mm,在
    的頭像 發(fā)表于 02-09 18:20 ?494次閱讀
    【<b class='flag-5'>ESP32</b>-C5系列】WT9932C5-TINY<b class='flag-5'>開發(fā)板</b>規(guī)格書

    ESP32-P4系列】WT9932P4-MINI開發(fā)板規(guī)格書

    開發(fā)板介紹ESP32-P4-MINI開發(fā)板是深圳市啟明云端有限公司推出的,基于WT0132P4-A1核心設計的多媒體開發(fā)板。WT0132P
    的頭像 發(fā)表于 02-03 18:14 ?261次閱讀
    【<b class='flag-5'>ESP32</b>-P4系列】WT9932P4-MINI<b class='flag-5'>開發(fā)板</b>規(guī)格書

    無需安裝!在瀏覽里就能玩轉ESP32/ESP8266,這個神器絕了!

    使用教程)ESP32-運行網頁服務器(WebServer)-實用篇介紹扔掉繁瑣的桌面軟件,一個瀏覽搞定所有
    的頭像 發(fā)表于 01-10 10:01 ?877次閱讀
    無需安裝!在瀏覽<b class='flag-5'>器</b>里就能玩轉<b class='flag-5'>ESP32</b>/<b class='flag-5'>ESP</b>8266,這個神器絕了!

    ESP32-P4全功能開發(fā)板ESP32-P4-TINY開發(fā)板該怎么選?看這篇就夠了!

    啟明云端基于樂鑫科技ESP32-P4芯片設計了多款開發(fā)板,這些開發(fā)板有什么區(qū)別?基于應用場景如何選擇?本期,我們聚焦兩款代表性產品:WT99P4C5-S1開發(fā)板與WT9932P4-TI
    的頭像 發(fā)表于 12-09 18:02 ?923次閱讀
    <b class='flag-5'>ESP32</b>-P4全功能<b class='flag-5'>開發(fā)板</b>和<b class='flag-5'>ESP32</b>-P4-TINY<b class='flag-5'>開發(fā)板</b>該怎么選?看這篇就夠了!

    樂鑫科技ESP32-S3開發(fā)板+超聲波霧化,給智能魚缸整點美學氛圍

    我們?yōu)槭裁匆o智能魚缸弄上霧化?美學氛圍當然是一方面,但更重要的功能是局部加濕,為水面植物與周圍空氣提供柔和濕度。因此我們特意推出本期內容:用樂鑫科技ESP32-S3開發(fā)板和超聲波霧化模塊讓水面形成
    的頭像 發(fā)表于 12-08 18:04 ?634次閱讀
    樂鑫科技<b class='flag-5'>ESP32</b>-S3<b class='flag-5'>開發(fā)板</b>+超聲波霧化,給智能魚缸整點美學氛圍

    低成本開源!用樂鑫科技ESP32-S3開發(fā)板輕松驅動無刷電機,保姆級教程來了!

    想用ESP32-S3開發(fā)板驅動無刷電機卻不知從何下手?本教程將手把手教你完成從硬件連接到軟件編程的全流程,無論你是新手還是有一定經驗的開發(fā)者,都能輕松掌握!本教程代碼已全部開源!后臺私信關鍵詞
    的頭像 發(fā)表于 11-06 18:03 ?835次閱讀
    低成本開源!用樂鑫科技<b class='flag-5'>ESP32</b>-S3<b class='flag-5'>開發(fā)板</b>輕松驅動無刷電機,保姆級教程來了!

    ESP32-P4 口袋開發(fā)板 啟明云端 WT9932P4-TINY開發(fā)板

    在萬物互聯的智能時代,您是否還在為尋找一款性能強大、接口豐富、應用靈活的嵌入式開發(fā)板而煩惱?啟明云端全新推出的WT9932P4-TINY開發(fā)板,基于樂鑫科技高性能ESP32-P4芯片匠心打造,專為安
    的頭像 發(fā)表于 09-11 18:06 ?1604次閱讀
    <b class='flag-5'>ESP32</b>-P4 口袋<b class='flag-5'>開發(fā)板</b> 啟明云端 WT9932P4-TINY<b class='flag-5'>開發(fā)板</b>

    ESP32-運行網頁服務器(Web Server)-實用篇

    在前一篇文章《ESP32-運行網頁服務器(WebServer)-入門篇》,我們介紹了ESP32運行網頁
    的頭像 發(fā)表于 07-28 18:05 ?3669次閱讀
    <b class='flag-5'>ESP32</b>-運行<b class='flag-5'>網頁</b><b class='flag-5'>服務器</b>(Web Server)-實用篇

    ESP32-P4-MINI開發(fā)板開箱和上手指南來了!速速碼住!

    上期“夢中情ESP32-P4-MINI開發(fā)板一出就備受青睞這期我們立馬就端著開箱和上手指南來了!不用驚嘆,我們就是這么迅速,請把“啟明云端權威”打在公屏上好嘛!開箱展示拿到
    的頭像 發(fā)表于 07-25 18:02 ?2161次閱讀
    <b class='flag-5'>ESP32</b>-P4-MINI<b class='flag-5'>開發(fā)板</b>開箱和上手指南來了!速速碼住!

    ESP32開發(fā)板元件資料

    ESP32開發(fā)板元件
    發(fā)表于 07-21 14:47 ?15次下載

    ESP32-P4 C5開發(fā)板燒錄小智全流程!速看!

    沒錯,你沒有看錯!我們帶著WT99P4C5-S1開發(fā)板燒錄小智全流程走來了!開發(fā)板搭載樂鑫科技ESP32-P4和ESP32-C5芯片,代碼完全開源,支持靈活二次
    的頭像 發(fā)表于 07-04 18:03 ?2346次閱讀
    <b class='flag-5'>ESP32</b>-P4 C5<b class='flag-5'>開發(fā)板</b>燒錄小智全流程!速看!

    ESP32-S3開發(fā)板燒錄小智AI系統(tǒng)全流程指南

    在AI語音交互領域不斷發(fā)展的今天,開發(fā)者們對于功能強大、開源靈活的開發(fā)板需求日益增長。今天,我們就來詳細了解一下ESP32AgentDevKit燒錄小智的全流程,這款搭載樂鑫科技ESP32
    的頭像 發(fā)表于 06-16 18:01 ?8259次閱讀
    <b class='flag-5'>ESP32</b>-S3<b class='flag-5'>開發(fā)板</b>燒錄小智AI系統(tǒng)全流程指南