Optron  
                
               
                 
              
                  
                    24.Август.2024 16:51:07
                   
                   
              1 
               
             
            
              Здравствуйте. 
Вот скетч разработки WEB-сервера.
[code]
#include "ESP8266WiFi.h"
#include "ESP8266WebServer.h"
String ssss="PRIVET_PRIVET";
uint8_t newMACAddress[] = {0xFA, 0xEB, 0xDC, 0xCD, 0xBE, 0xAF};
ESP8266WebServer server(10200);
const char* ssid = "ABRAKADABRA";
const char* password =  "19661117";
byte tries = 10;
void setup()
{
  Serial.begin(9600);
  WiFi.begin(ssid, password);
  WiFi.mode(WIFI_STA);
  Serial.print("[OLD] ESP8266 Board MAC Address:  ");
  Serial.println(WiFi.macAddress());
  wifi_set_macaddr(STATION_IF, &newMACAddress[0]);
  Serial.print("[NEW] ESP8266 Board MAC Address:  ");
  Serial.println(WiFi.macAddress());
  while (--tries && WiFi.status() != WL_CONNECTED)
  {
    delay(500);
    Serial.print(".");
  }
  if (WiFi.status() != WL_CONNECTED)
  {
    Serial.println("Non Connecting to WiFi..");
  }
  else
  {
    Serial.println("");
    Serial.println("WiFi connected");
    Serial.println("IP address: ");
    Serial.println(WiFi.localIP());
  }
  server.on("/",f1);
  server.on("/armageddon", f2);
  server.on("/katastrofa", f3);
  server.begin();
  Serial.println("Server listening");
}
void loop()
{
  server.handleClient();
}
void f1()
{
  server.send(200, "text/plain","PRIVET");
}
void f2()
{
  server.send(200, "text/plain","ARMAGEDDON");
}
void f3()
{
  server.send(200, "text/plain","KATASTROFA");
}
[/code]
 
Посылаю ему по очереди из интернета:
http://xx.xxx.x.xxx:10200  
http://xx.xxx.x.xxx:10200/armageddon  
http://xx.xxx.x.xxx:10200/katastrofa 
xx.xxx.x.xxx - статический адрес.
Работает отлично.
Например, для обработки ссылки: 
http://xx.xxx.x.xxx:10200/armageddon  
назначена функция f2 (строки 49, 65).
А есть ли способ прочитать эту ссылку в какую-то строковую переменную, а затем работать с этой переменной?
Спасибо.
             
            
               
               
               
            
            
           
          
            
              
                v258  
                
               
              
                  
                    24.Август.2024 17:09:02
                   
                   
              2 
               
             
            
              Разъясните более понятным языком, что вы хотите
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    24.Август.2024 17:19:38
                   
                   
              3 
               
             
            
              
Например, если я подключаюсь к ESP01 по такой ссылке:
http://xx.xxx.x.xxx:10200/l40h60 
то ARDUINO-UNO должна получить команду на поддержание влажности почвы в пределах от 40% до 60%.
Не назначать же функцию для обработки вот этой подстроки: “l40h60”.
             
            
               
               
               
            
            
           
          
            
              
                v258  
                
               
              
                  
                    24.Август.2024 17:34:40
                   
                   
              4 
               
             
            
              Вы хотите странного. При обращении к web-серверу по указанному адресу у вас вызывается функция f2(). Что мешает вам прописать в ней нужный функционал?
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    24.Август.2024 17:37:00
                   
                   
              5 
               
             
            
              
А если мне надо передать другие настройки:
http://xx.xxx.x.xxx:10200/l38h62 , то для этих настроек прописывать еще одну функцию?
             
            
               
               
               
            
            
           
          
            
            
              
Конечно, есть, иначе как вообще все веб-серверы работают?
Например, вот здесь, автор считывает пришедшие данные в строку strData, а потом её печатает.
  
  
    
  Привет! Это мой первый пост здесь! Решил его написать, чтобы облегчить путь всем начинающим знакомство с ESP 8266. Итак, у нас есть ESP-01. И USB-UART преобразователь. Лично у меня такой, но это не...
   
  
    
    
  
  
 
             
            
               
               
               
            
            
           
          
            
              
                rkit  
                
               
              
                  
                    24.Август.2024 17:39:26
                   
                   
              7 
               
             
            
              Используй POST, а не вот эту чушь.
             
            
               
               
              1 лайк 
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    24.Август.2024 18:40:44
                   
                   
              8 
               
             
            
              А так можно, если ESP у меня работает в режиме станции?
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    24.Август.2024 20:51:20
                   
                   
              10 
               
             
            
              Мне надо отсылать запросы на ESP и получать ответы. А не наоборот.
Попробую для чтения URL server.available
             
            
               
               
               
            
            
           
          
            
              
                v258  
                
               
              
                  
                    24.Август.2024 20:54:30
                   
                   
              12 
               
             
            
              
Удалять гланды можно и через задний проход. Удачи ))
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    24.Август.2024 20:58:49
                   
                   
              13 
               
             
            
              
Посоветуйте как это сделать. В смысле, не гланды удалять.
Мне всего-навсего надо URL,примерно такой:
http://xx.xxx.x.xx:10200/katastrofa 
загнать в стриноговую переменную. А в примерах, которые мне приводили, ошибки.
             
            
               
               
               
            
            
           
          
            
              
                v258  
                
               
              
                  
                    24.Август.2024 21:06:02
                   
                   
              14 
               
             
            
              Предлагаете перепечатать вам здесь учебник?
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    24.Август.2024 21:08:22
                   
                   
              15 
               
             
            
            
               
               
               
            
            
           
          
            
            
              
Именно это и называется “сервер” - тот, кто принимает запросы и отвечает на них. Если бы Ваш есп сам слал запросы, он был бы клиентом 
По ссылке что я дал, тоже сервер, он принимает запросы и отвечает. Вы бы разобрались с начала, а потом уж возвращались сюда с дополнительными вопросами 
 
Можете, конечно, и попробовать, только по ссылке, что я Вам дал, для чтения используется Serial.read(). Вы вообще читали? Разбирались?
Ну я же Вам дал ссылку! Там это делается и печатается, я ахреневаю, что Вам ещё нужно?
Или Вы ни слова не понимаете ни в том коде, ни в своём и Вам нужно, чтобы кто-то просто вписал это в Ваш код? Так?
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    25.Август.2024 03:51:47
                   
                   
              17 
               
             
            
              
В своем коде, как раз-таки, понимаю. Иначе как бы у меня получилось связать IP-адрес 192.168.0.62, которого ТУТ НЕТ, портом 10200?
             
            
               
               
               
            
            
           
          
            
              
                v258  
                
               
              
                  
                    25.Август.2024 04:05:33
                   
                   
              18 
               
             
            
              
Набор слов какой-то. Вы реально не понимаете, о чем говорите
             
            
               
               
               
            
            
           
          
            
              
                Optron  
                
               
              
                  
                    25.Август.2024 04:07:17
                   
                   
              19 
               
             
            
              
Не понимал бы - этот скетч не работал бы.
             
            
               
               
               
            
            
           
          
            
              
                v258  
                
               
              
                  
                    25.Август.2024 04:21:10
                   
                   
              20 
               
             
            
              Много ль ума нужно скопировать готовый код? ))