Помогите разобратся с GET запросами.

sssnek
Offline
Зарегистрирован: 20.07.2019

Помогите разобратся!

Устройство (ESP32) подключается к wifi, но GET запрос не отправляет.

Перерыл кучу информации, сделал как книга пишет, но увы....

ПОМОГИТЕ плизз

#include <WiFi.h>
#include <SPI.h>
#include <Arduino.h>

char server[] = "freon.ho.ua";
const char* ssid = "INet";
const char* pass = "000000008";
int status = WL_IDLE_STATUS;
const int pin_p[] = {12,13,14,15,16,17,21,22,23,25,26,27,32,33,34,35}; //масив с номерами пинов
int i=0;

//String State_P[16] = "off"; //состояние пинов для сервера
//String State_I[16] = "on"; //состояние пинов для цыкла

//----------------------Таймер-----------------------------
const long interval = 5000;
unsigned long next_time =0;
WiFiClient client;
void setup(){
    // preparing GPIOs
    Serial.begin(115200);
    
    //Задаем пинам из масива, OUTPUT
for (int i=0; i <= 15; i++){
  pinMode(pin_p[i],OUTPUT); 
}
  //Задаем пинам из масива, LOW
for (int i=0; i <= 15; i++){
  digitalWrite(pin_p[i], LOW);
}
//-------------------------------------Wi-Fi---------------------------------------------------
  while (status != WL_CONNECTED) {
    Serial.print("Attempting to connect to SSID: ");
    Serial.println(ssid);
    // Connect to WPA/WPA2 network. Change this line if using open or WEP network:
    status = WiFi.begin(ssid, pass);

    // wait 10 seconds for connection:
    delay(10000);
  }
  
  if (status != WL_CONNECTED) { 
    Serial.println("NO CONNNECT");
    // больше ничего не делаем:
    while(true);
  } 
   else {
    Serial.println("Connected to wifi");

                if (client.connect(server, 80))
            {
              client.print( "GET /index.php?");
              client.print( "alarm=5");
              client.println(" HTTP/1.1");
              client.print( "Host: freon.ho.ua" );
              client.println("Connection: close");
              client.println();
              delay(500);
            }
   }
//-------------------------------------Wi-Fi----------------------------------------------------
          Serial.print("ON- ");
          Serial.println(i);
    }
    
void loop(){
unsigned long now_time = millis();
          digitalWrite(pin_p[i],HIGH); // Пуск насоса
 //---------------------------------------------Задержка---------------------------------------
      if( now_time - next_time >= 20000)  // если текущее время превысило намеченное время, то
      {
          digitalWrite(pin_p[i],LOW); // Стоп насос  

          Serial.print("OFF- ");
          Serial.println(i);// вычисляем время следующего переключения
          i++;
          Serial.print("ON- ");
          Serial.println(i);// вычисляем время следующего переключения
            if (i>=16){
            i=0;
          }
          next_time = now_time; // вычисляем время следующего переключения 
      }
  }

 

andycat
andycat аватар
Offline
Зарегистрирован: 07.09.2017

а с чего вы взяли что запрос не отправляется?

если HTTP сервер свой - смотрите в логах сервера - доходит вообще коннект или нет.

и заголовок запроса мне что то подсказывает у вас не полный

        url = "GET " + url + " HTTP/1.1\r\n" +
              "Host: " + srvhost + "\r\n" +
              "User-Agent: Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9b5) Gecko/2008050509 Firefox/3.0b5\r\n" +
              "Accept: text/html\r\n" +
              "Connection: Close\r\n\r\n";
        Serial.println(url);
        client.println(url);
        deviceMode = 0;
        client.stop();

 

b707
Offline
Зарегистрирован: 26.05.2017

andycat - User-Agent необязательное поле, а вот то. что у ТС неправильные окончания строк - вполне может быть причиной

sssnek
Offline
Зарегистрирован: 20.07.2019

По этому запросу отправляется письмо на почту! В даном случае письма нет.

Обьясните пожалуйтса что за \r\n

ЕвгенийП
ЕвгенийП аватар
Онлайн
Зарегистрирован: 25.05.2015

А на соседнем форуме у ТС почему-то другой скетч. Сегодня не пятница, случаем?