完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我目前有一个页面在提交时将以下内容发布到 httpsbin.com。我希望在 softap 模式下对我的 esp8266 进行编程,以接受来自我手机的此帖子信息。我已经发布了我的 esp8266 代码,我正在努力解决如何在 ESP8266WebServer 类中引用发布的数据以及如何在 handle_Working() 方法中使用它?
非常感谢您提供的任何帮助或指导。 ''''' args: {} data: "" files: {} form: {key1: "1", key2: "1", key3: "1", key4: "E2F779", key5: "E2F779", key6:“E2F779”} key1:“1” key2:“1” key3:“1” key4:“E2F779” key5: headers: {Accept: "*/*", Accept-Encoding: "gzip, deflate, br", Accept-Language: "en-US,en;q=0.9", ...} Accept: "*/*" 接受 -编码:“gzip, deflate, br” 接受语言:“en-US,en;q=0.9” 内容长度:“611” 内容类型:“multipart/form-data; boundary=----WebKitFormBoundaryZXr1FwR2WZUkGP5K” Dnt:“1” 主机:“httpbin.org” 来源:“null” Sec-Fetch-Dest:“空” Sec-Fetch-Mode:“cors” Sec-Fetch-Site:“跨站点” 用户代理: “Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如 Gecko)Chrome/83.0.4103.61 Safari/537.36” X-Amzn-Trace-Id:“Root=1-5edc178b-c7483f0e6a08673015e11968" json: null origin: "xxx.xx.xxx.xx" 网址:“https://httpbin.org/post” '''''''' '' '''''' #include #include #include #include //包含文件系统头文件 /* 输入您的 SSID 和密码 */ const char* ssid = "CoastAwhileIOT"; // 在此处输入 SSID const char* password = "tempPass"; //在这里输入密码 const char INDEX_HTML[] ="/BoatLight.html"; /* 输入 IP 地址详细信息 */ IPAddress local_ip(192,168,1,1); IP地址网关(192,168,1,1); IP 地址子网(255,255,255,0); ESP8266WebServer服务器(80); uint8_t LED1pin = 0; 布尔 LED1 状态 = 低; uint8_t LED2pin = 1; 布尔 LED2 状态 = 低; uint8_t LED3pin = 3; 布尔 LED2 状态 = 低; void setup() { Serial.begin(115200); 引脚模式(LED1pin,输出); 引脚模式(LED2pin,输出); pinMode(LED3pin,输出); WiFi.softAP(ssid,密码); WiFi.softAPConfig(local_ip, 网关, 子网); 延迟(100); server.on("/html", HTTP_GET, [](AsyncWebServerRequest *request){ request->send(200, "text/html", INDEX_HTML); }); server.on("/", handle_OnConnect); server.on("/", HTTP_POST, handle_Working); server.onNotFound(handle_NotFound); 服务器.开始(); Serial.println("HTTP 服务器启动"); } void loop() { 服务器。 } void handle_OnConnect() { LED1status = LOW; LED2状态=低; LED3状态=低; Serial.println("GPIO7 状态:OFF | GPIO6 状态:OFF"); server.send(200, "text/html", INDEX_HTML); } void handle_NotFound(){ server.send(404, "text/plain", "Not found"); } void handle_Working(){ if( !server.hasArg("key1") || !server.hasArg("key2") || !server.hasArg("key3") || server.arg("key1") = = NULL || server.arg("key2") == NULL || server.arg("key3") == NULL{ // 如果POST请求没有用户名密码数据 server.send(400, " text/plain", "400: 无效请求"); }else if(server.hasArg("key4") || !server.hasArg("key5") || !server.hasArg("key6"){ // 设置 NEOPIXEL Ring 为 ON 黄灯 server.send(200 , "text/html", " Lights successful ");}else{ //设置 NEOPIXEL Ring 为 Key3 Color server.send(200, "text/html", " Lights successful< /p>"); |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
321 浏览 0 评论
1178 浏览 1 评论
586浏览 6评论
483浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
468浏览 5评论
467浏览 4评论
442浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 06:30 , Processed in 0.754446 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号