esp8266网络开发

esp8266三种工作模式

1 接入点模式Access Point

esp8266不仅可以接收信号也可以向外部发送信号(可以建立一个wifi)

2 无线终端模式Wireless Station

可以接入网络

3 混合模式

集合二者有点

4 Http

请求包含请求头,请求空行,请求头(post还有请求体)
响应包含状态行,响应头,响应体

GET /favicon.ico HTTP/1.1

Host: www.taichi-maker.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.39
Accept: image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
Referer: http://www.taichi-maker.com/wp-content/uploads/2016/12/esp8266_devkit_horizontal-01.png
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Cookie: NWZbTK=19xDdISvF8; blQWITsEVOcrL=FG90m3W; eQf_liynbDCJtRZ=MAl0ZjE2K
  • 请求行
GET /favicon.ico HTTP/1.1

请求类型GET
/favicon.ico 请求网站的内容
HTTP/1.1 协议的版本

  • 请求头
    表示请求哪一个网站的主机
Host: www.taichi-maker.com

esp8266默认ip地址为192.168.4.1

在这里插入图片描述

5 写个简单的服务器

 #include <ESP8266WiFi.h>        // 本程序使用ESP8266WiFi库
 #include <ESP8266WiFiMulti.h>   // wifi连接库
 #include <ESP8266WebServer.h>   // 服务库

 ESP8266WiFiMulti eSP8266WiFiMulti;     //multi对象
 ESP8266WebServer eSP8266WebServer(80); //构建一个服务器端口是80的对象

void handRoot(){
    eSP8266WebServer.send(200,"text/plain","Hello Esp8266 Web");
}

void handNotFound(){
    eSP8266WebServer.send(404,"text/plain","PageNot found");
}

void setup() {

  Serial.begin(115200);              // 启动串口通讯
  eSP8266WiFiMulti.addAP("mark2","12345678");

  int i = 0;
  while (eSP8266WiFiMulti.run() != WL_CONNECTED)
  {
      delay(2000);
      Serial.print(i++);Serial.print(' ');
  }


  
  Serial.print('\n');    // 通过串口监视器输出信息
  Serial.print("IP address: ");      // 以及NodeMCU的IP地址
  Serial.println(WiFi.SSID());              // 告知用户NodeMCU所建立的WiFi名
  Serial.println(WiFi.localIP());   // 通过调用WiFi.softAPIP()可以得到NodeMCU的IP地址
  //启动网络服务
  eSP8266WebServer.begin(); 
  eSP8266WebServer.on("/",handRoot);
  eSP8266WebServer.onNotFound(handNotFound);

 delay(3000);
 Serial.println(WiFi.localIP());
}
void loop() { 
    //用于处理http请求
    eSP8266WebServer.handleClient(); 
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值