• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

HTTP POST-запрос и ответ сервера

eremey

New member
Не силен в HTTP. Прошу помощи в понимании основ.
XAMPPом организовал сервер и базу .
С ESP8266 посылаю пост-запрос с данными.

POST /index.php HTTP/1.1
Host: 192.168.0.50
Content-Type: application/x-www-form-urlencoded
Content-Length: 25
Connection: close

(данные)

Данные в базу попадают.
Сервер отвечает 200 ОК, но при этом возвращается и вся html страница.
Хотелось бы узнать, как заставить сервер блокировать эту ненужную отправку.
 
XAMPPом организовал сервер и базу .
Тоже не силен, но вот этот момент меня интересует. Как вы это организовали. Сколько не пробовал, у меня не получилось добиться кода 200. Только 404. Я прописывал виртуальные хосты в файле hosts на компе и в настройках апача в файле httpd.conf. Или вы ДНС подняли на компе?
Сервер отвечает 200 ОК, но при этом возвращается и вся html страница.
Это все в сериал порт выводит?
 
Хотелось бы узнать, как заставить сервер блокировать эту ненужную отправку.
Кстати, это не сервер. Какой запрос пришел, такой ответ сервер и выдал. Так что вопрос в запросе с есп. Это как я понимаю данную ситуацию. Пусть более знающие поправят, если не прав.
 

eremey

New member
не получилось добиться кода 200. Только 404
не понятно, что к чему обращается .... localhost-то работает ?
Это все в сериал порт выводит?
разумеется. Ничего нового здесь
while(client.available()) {...Serial.println...}

а вот что касаемо ответа вебсервера, к сожалению, в инете либо пережевывание известных вещей или очень скупо о механизме формирования ответа
 
не понятно, что к чему обращается .... localhost-то работает ?
Конечно рабоатет. Иначе бы даже кода 404 не получил бы. А так между виртуальными хостами спокойно делаю переходы. Они и пингуются по имени, если с другого компа пинговать. А вот с ЕСП пинговаться не хочет.
разумеется. Ничего нового здесь
while(client.available()) {...Serial.println...}
Так вы всю функцию покажите. Вряд ли сервер шлет всю страницу. Можете ради интереса с другого виртуального хоста сделать запрос и посмотрите, что отвечает.
а вот что касаемо ответа вебсервера, к сожалению, в инете либо пережевывание известных вещей или очень скупо о механизме формирования ответа
Не знаю, почему молчат остальные форумчане, но повторюсь, скорее всего сервер тут ни причем. Скорее всего это запрос так настроен, потому что механизм на сервере обычно прост: что получил, то и отдал. Очень редко включается обработка и отсыл доп инфы. Так что если вы сами специально ничего не прописывали, то вряд ли. Да и прием обычно прост. Вы на PHP ведь сайт крутите, раз у вас ксампп. Значит самое простое это посмотреть массив $_POST. А вот что вы с ним дальше делаете, это другой вопрос.
 
Сверху Снизу