2017-05-15 5 views

답변

0

웹 서버과 통신하려면 HttpClient이 필요합니다.

시작하는 좋은 방법은 HttpClient 샘플 -> ReuseConnection을 사용하는 것입니다.

이렇게하면보다 많은 요청을 할 수 있습니다.

Arduino IDE의 직렬 모니터에서 요청의 응답을 볼 수 있습니다.

샘플 코드 :

: 당신이 싶어 원하는 HTTP 페이지와 "/ someroute : // HTTP"를 대체합니다.

#include <Arduino.h> 

#include <ESP8266WiFi.h> 
#include <ESP8266WiFiMulti.h> 

#include <ESP8266HTTPClient.h> 

#define USE_SERIAL Serial 

ESP8266WiFiMulti WiFiMulti; 

HTTPClient http; 

void setup() { 

    USE_SERIAL.begin(115200); 
    // USE_SERIAL.setDebugOutput(true); 

    USE_SERIAL.println(); 
    USE_SERIAL.println(); 
    USE_SERIAL.println(); 

    for(uint8_t t = 4; t > 0; t--) { 
     USE_SERIAL.printf("[SETUP] WAIT %d...\n", t); 
     USE_SERIAL.flush(); 
     delay(1000); 
    } 

    WiFiMulti.addAP("SSID", "PASSWORD"); 

    // allow reuse (if server supports it) 
    http.setReuse(true); 
} 

void loop() { 
    // wait for WiFi connection 
    if((WiFiMulti.run() == WL_CONNECTED)) { 

     http.begin("http://<IP>:<Port>/someroute"); 

     int httpCode = http.GET(); 
     if(httpCode > 0) { 
      USE_SERIAL.printf("[HTTP] GET... code: %d\n", httpCode); 

      // file found at server 
      if(httpCode == HTTP_CODE_OK) { 
       String payload = http.getString(); 
       USE_SERIAL.println(payload); 
      } 
     } else { 
      USE_SERIAL.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str()); 
     } 

     http.end(); 
    } 

    delay(3000); 
}