Как установить соединение между ESP32 в качестве точки доступа и локальным сервером

#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 мог с ним разговаривать.