ESP 8266: envío de datos al sitio mediante el método de solicitud Get

¡Oye! ¡Esta es mi primera publicación acá! Decidí escribirlo para que sea más fácil para todos los principiantes familiarizarse con el ESP 8266.





Entonces tenemos ESP-01.





Y un convertidor USB-UART.





Personalmente, tengo uno, pero ese no es el punto.

Puede tomar otros módulos, solo cambiará el diagrama de conexión.

Nos conectamos por firmware:





Inmediatamente es necesario decir acerca de las trampas.





GPIO0 EXT_RSBT 10.

, RTS DTR.





, ESP-01 – 3,3. 3,3.





3,3 USB-UART , 220 ESP-01.





lm1117-3,3. , ESP-01 ESPlorer Lua Arduino.





– Arduino IDE.

esp8266 .

.

, <> Generic ESP8266 Module.





.





#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h> 
#include <ESP8266WebServer.h>
#include <ESP8266HTTPClient.h>
boolean recievedFlag;
String strData, Link;

//     WIFI 
const char *ssid = "**************";                           //  
const char *password = "*************";                           //   
const char *host = "**********************************";       //   
const int httpsPort = 443;                                    //   HTTPS= 443  HTTP = 80
const char fingerprint[] PROGMEM = "5B:FB:D1:D4:49:D3:0F:A9:C6:40:03:34:BA:E0:24:05:AA:D2:E2:01";    //  

//     t  WIFI 
void setup() {
 delay(1000);                                                 //
 Serial.begin(9600);                                          //  UART
 WiFi.mode(WIFI_OFF);                                         //  
 delay(1000);                                                 //
 WiFi.mode(WIFI_STA);                                         // ESP   
 WiFi.begin(ssid, password);                                  //   
 Serial.println("");
 Serial.print("Connecting");                                  //  UART  
 //  
 while (WiFi.status() != WL_CONNECTED) {delay(500);
 Serial.print(".");}                                          //     UART 
 Serial.println("");                                          //  
 Serial.print("Connected to ");                               //  UART:
 Serial.println(ssid);                                        //  
 Serial.print("IP address: ");
 Serial.println(WiFi.localIP());                              //IP    ESP
}

//    
void transmit() {
 WiFiClientSecure httpsClient;                                //   WiFiClient
 Serial.println(host);                                        //  UART:    ,
 Serial.printf("Using fingerprint '%s'\n", fingerprint);      //  .
 httpsClient.setFingerprint(fingerprint);                     //    
 httpsClient.setTimeout(15000);                               //   (15 )
 delay(1000);                                                 //                                     
 Serial.print("HTTPS Connecting");                            //  UART:     
 int r=0;                                                     //    
 while((!httpsClient.connect(host, httpsPort)) && (r < 30))
 {delay(100);Serial.print(".");r++;}                          //        UART 
 if(r==30) {Serial.println("Connection failed");}             //      UART,     
 else {Serial.println("Connected to web");}                   //     UART,    
 Link = "/get.php?" + strData;                                //   GET 
 Serial.print("requesting URL: ");                            //  UART   GET 
 Serial.println(host+Link);                                   //  UART GET 
 httpsClient.print(String("GET ") + Link + " HTTP/1.1\r\n" +  
 "Host: " + host + "\r\n" + 
 "Connection: close\r\n\r\n");                                // GET   ESP
 Serial.println("request sent");                              //  UART  GET  
 while (httpsClient.connected())                              //   
 {String line = httpsClient.readStringUntil('\n');
 if (line == "\r") {Serial.println("headers received");break;}}
 Serial.println("reply was:");                                //  UART    
 Serial.println("==========");                                //    UART  
 String line;                                                 //     
 while(httpsClient.available()){                              //    
 line = httpsClient.readStringUntil('\n');                    
 Serial.println(line);}                                       //  UART    
 Serial.println("==========");                                //    UART  
 Serial.println("closing connection");}                       //  UART,      
 
// 
void loop() {
  while (Serial.available() > 0)                              //    UART      
  { strData +=(char)Serial.read();                            //    
    recievedFlag = true; delay(2); };                         //     
  if (recievedFlag)                                           //      
  { Serial.println(strData);                                  //   UART       
    transmit();                                               //    
    strData ="";                                              //     
    recievedFlag = false;}                                    //  
}

      
      



. .

: Wi-Fi / / UART.





:

const char fingerprint[] PROGMEM = "5B:FB:D1:D4:49:D3:0F:A9:C6:40:03:34:BA:E0:24:05:AA:D2:E2:01"; //



.





.. HTTPS « ».





: https://www.grc.com/fingerprints.htm





“Fingerprint Site”.





, .





:





! Esp .





«id=123456789» «». « » «9600 » .





, .





«https://www.000webhost.com».





. Get ( ).

.





« » …





… .





« ».





«public_html».





«New File» .





test.txt ( ).





«get.php» :





<?php
  $var1= $_GET['id'];
  
  $fileContent = "Registrated id= ".$var1."\n";
  
  $fileStatus = file_put_contents('test.txt',$fileContent,FILE_APPEND);
  if($fileStatus != false)
  {
     echo "SUCCESS: data written to file";
	}
	else
	{
	echo "FAIL: could not write to file";
	}
	?>
      
      



.

.





: «SUCCESS: data written to file».





test.txt….





.





test.txt . « /test.txt».





- .





. , , . , ..





. .. - . !








All Articles