ESP8266 не может прочитать параметры POST
Я работаю над простым сервером REST. Я сделал метод для обработки http://<esp8266_IP>/test
. Метод GET работает как шарм, и я получил ответ. Затем я попытался отправить POST с данными JSON (я использовал PostMan), но ничего не могу прочитать.
При поиске в Интернете я прочитал, что библиотека ESP8266 не может анализировать JSON, и в этом случае я могу найти обычный текст в server.arg("plain")
. Я пробовал, но безуспешно
Как прочитать данные в методе POST?
ESP8266WebServer server(80);
...
void handleTest()
{
if (server.method() == HTTP_GET)
{
...
}
else if (server.method() == HTTP_POST)
{
String message = "POST\nHeaders:\n";
for (uint8_t i = 0; i < server.headers(); i++)
{
message += server.headerName(i) + ": " + server.header(i) + "\n";
}
message += "\nRequest params:\n";
for (uint8_t i = 0; i < server.args(); i++){
message += " " + server.argName(i) + ": " + server.arg(i) + "\n";
}
server.send(202, "text/plain", message);
}
}
...
void setup()
{
WiFi.begin(ssid, password);
Serial.println("");
// Ждем подключения
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
if (MDNS.begin("esp8266")) {
Serial.println(F("[Server] MDNS responder started"));
}
server.on("/test", handleTest);
}
@Noisemaker, 👍0
Обсуждение1 ответ
▲ 1
Вместо использования ниже в handleTest()
else if (server.method() == HTTP_POST)
попробуйте использовать ниже в setup()
server.on("/test", POST, handleTest);
,
@Goutham Kumar
Смотрите также:
- Несколько клиентских серверов через Wi-Fi
- Как получить параметры запроса от ESPAsyncWebServer?
- контент» не захватывается
- Как разрешить междоменные запросы на ESP8266 WebServer
- Почему мы используем client.flush() в коде, когда мы подключаем Esp8266 к Интернету или серверу?
- Создание веб-сервера на Wemos D1 mini pro
- Управление реле 5В с помощью Wemos D1 R1
- ESP8266 отправляет веб-страницу клиенту, но html-коды отображаются в браузере вместо веб-страницы
Пожалуйста, покажите свой код., @Mark Smith
я не уверен, что он может это сделать, кроме загрузки файлов..., @dandavis
@MarkSmith Я не думаю, что это будет полезно, кстати, я вставляю часть кода в свой вопрос., @Noisemaker