天天看点

小白快速入门 esp8266 搭建网络服务器

http协议中默认使用80端口访问网页

#include <ESP8266WiFi.h> 
#include <ESP8266WiFiMulti.h>
#include <ESP8266WebServer.h>
ESP8266WiFiMulti wifiMulti; // 创建一个wifi对象
ESP8266WebServer esp8266_server(80); // 建立eso8266_server对象使用的80端口
void setup() {
  // put your setup code here, to run once:
 Serial.begin(115200); //建立串口通信
 wifiMulti.addAP("wifi1", "passswrod1"); // wifi1 wfi2 wifi3 可写入更多
 wifiMulti.addAP("wifi2", "password2"); // 会为你选择信号最强的wifi
 wifiMulti.addAP("wifi3", "password3");
 while(wifiMulti.run() != WL_CONNECTED) // wifiMulti 如果返回WL_CONNECTED 跳出循环
 {
    delay(200);
    Serial.print(".");
  }
  Serial.println();
  Serial.println("wifi start  ");
  Serial.print("name ");
  Serial.print(WiFi.SSID()); // 打印出连接到的wifi名称
  Serial.print("  IP ");
  Serial.println(WiFi.localIP()); // 打印出wifi给esp8266板子分配的IP

  esp8266_server.begin(); // 启动网络服务功能
  esp8266_server.on("/", handleRoots); // /为网页根目录, handleRoots 为访问网页的源代码
  esp8266_server.onNotFound(handleNotFound); // 对网页地址错误时返回404跳转到handleNotFound构建的网页
  Serial.println("HTTP esp8266_server started");
}

void loop() {
  esp8266_server.handleClient(); // 处理Http服务器访问
}
void handleRoots()
{
  esp8266_server.send(200, "text/html", "<a href=\"#\">www.baidu.com</a>"); //处理根目录访问请求
}
void handleNotFound()
{
  esp8266_server.send(404, "text/html","<h1>Not found</h1>"); // 处理范围错误的请求
 };
           

每个人IP都不一样以自己串口窗口中的IP为准

小白快速入门 esp8266 搭建网络服务器

访问根目录效果

小白快速入门 esp8266 搭建网络服务器

404网页返回的结果

小白快速入门 esp8266 搭建网络服务器

继续阅读