#http #arduino #esp32 #ota
#http #arduino #esp32 #ота
Вопрос:
Мне нужно отправить файл на локальный сервер , поэтому я использую httpClient
и пытаюсь использовать сообщение с хостом: http://127.0.0.1:5000/show-version
, В последовательном мониторе, но это не работает, снова ESP находится в режиме точки доступа
void SendVersion (){ client.begin(HOST); client.addHeader("Content-Type", "text/plain"); int response = client.POST(version); if(responsegt;0){ String response = client.getString(); //Get the response to the request Serial.println(response); //Print return code Serial.println(response); //Print request answer }else{ Serial.print("Error on sending POST: "); Serial.println(response); } client.end(); }
Ответ №1:
127.0.0.1
это специальный IP — адрес, который означает «этот компьютер или устройство». Когда вы используете его на ESP32, это означает ESP32, а не сервер, к которому вы пытаетесь подключиться. Это также известно как localhost
— опять же, сокращение для компьютера или устройства, на котором работает программное обеспечение. Он не идентифицирует внешний компьютер.
Вам нужно использовать фактический IP-адрес сервера, к которому вы пытаетесь подключиться. Как вы это обнаружите, зависит от операционной системы, на которой работает сервер — если вы не знаете, как это сделать, воспользуйтесь Google, чтобы узнать.
И, конечно, если ESP32 находится в режиме точки доступа, то сервер, с которым он пытается связаться, должен быть подключен к сети Wi-Fi ESP32, чтобы ESP32 мог с ним разговаривать.