使用 WiFi.h 从 WiFiClient ESP32 获取数据
Getting data from WiFiClient ESP32 using WiFi.h
我有一个 ESP32 充当接入点,运行 简单页面。我在那里有 2 个文本输入字段和一个按钮。首先,我打开页面,输入一些数据,然后按下发送按钮,我需要能够从输入字段中获取两个字符串。这是我到目前为止得到的代码,但我只在刷新页面时才取回数据,这不是我真正想要的,格式如下所示:
"GET /?ssid=Ahoj&password=Prdel&SEND=OFF HTTP/1.1"
String html ="<!DOCTYPE html> \
<html> \
<body> \
<center><h1>Configuration Page</h1></center> \
<form> \
<center><h3>Wi-Fi SSID</h3></center> \
<center><input type=\"text\" name=\"ssid\"></center><br><br> \
<center><h3>Wi-Fi Password</h3></center> \
<center><input type=\"text\" name=\"password\"></center> \
<center><button name=\"SEND\" button style=\"color:green\" value=\"OFF\" type=\"submit\">SEND</button><br><br></center> \
</form> \
</body> \
</html>";
void loop() {
WiFiClient webclient = server.available(); // Listen for incoming clients
if (webclient) {
webclient.print(html);
Serial.println("New Webclient."); // print a message out in the serial port
while (webclient.connected()) { // loop while the client's connected
if (webclient.available()) { // if there's bytes to read from the client,
Serial.println("Read client data : ");
Serial.println(webclient.readString());
}
webclient.stop();
Serial.println("Webclient disconnected.");
Serial.println("");
}
}
}
使用
解决了我的问题
AsyncTCP.h
ESPAsyncWebServer.h
我有一个 ESP32 充当接入点,运行 简单页面。我在那里有 2 个文本输入字段和一个按钮。首先,我打开页面,输入一些数据,然后按下发送按钮,我需要能够从输入字段中获取两个字符串。这是我到目前为止得到的代码,但我只在刷新页面时才取回数据,这不是我真正想要的,格式如下所示: "GET /?ssid=Ahoj&password=Prdel&SEND=OFF HTTP/1.1"
String html ="<!DOCTYPE html> \
<html> \
<body> \
<center><h1>Configuration Page</h1></center> \
<form> \
<center><h3>Wi-Fi SSID</h3></center> \
<center><input type=\"text\" name=\"ssid\"></center><br><br> \
<center><h3>Wi-Fi Password</h3></center> \
<center><input type=\"text\" name=\"password\"></center> \
<center><button name=\"SEND\" button style=\"color:green\" value=\"OFF\" type=\"submit\">SEND</button><br><br></center> \
</form> \
</body> \
</html>";
void loop() {
WiFiClient webclient = server.available(); // Listen for incoming clients
if (webclient) {
webclient.print(html);
Serial.println("New Webclient."); // print a message out in the serial port
while (webclient.connected()) { // loop while the client's connected
if (webclient.available()) { // if there's bytes to read from the client,
Serial.println("Read client data : ");
Serial.println(webclient.readString());
}
webclient.stop();
Serial.println("Webclient disconnected.");
Serial.println("");
}
}
}
使用
解决了我的问题AsyncTCP.h
ESPAsyncWebServer.h