Simple HTTP GET and POST with ESP8266.
Dependencies: ESP8266Interface HTTPClient-SSL WebSocketClient mbed-rtos mbed
Fork of ESP8266_HTTP_HelloWorld by
Diff: main.cpp
- Revision:
- 19:cd46817e9acf
- Parent:
- 18:3209e51b731a
- Child:
- 20:056e849ebfa4
--- a/main.cpp Tue Jun 09 17:49:47 2015 +0000 +++ b/main.cpp Tue May 03 13:41:35 2016 +0000 @@ -4,41 +4,57 @@ #include "TCPSocketConnection.h" #include "Websocket.h" -ESP8266Interface wifi(D1,D0,D2,"demossid","password",115200); // TX,RX,Reset,SSID,Password,Baud +const char* ssid = "janUK"; +const char* pwd = "0624710192"; + +ESP8266Interface wifi(D8, D2, D7, ssid, pwd, 115200); // TX,RX,Reset,SSID,Password,Baud RawSerial pc(USBTX, USBRX); // tx, rx + HTTPClient http; -char str[512]; int main() { - pc.baud(9600); + // 115200 baud rate to talk back to the PC + pc.baud(115200); + + // need debug messages? check ESP8266Interface/ESP8266/ESP8266.cpp and change the #if 0 to #if 1 + + pc.printf("\nTrying to connect to %s...!\r\n", ssid); wifi.init(); //Reset wifi.connect(); //Use DHCP - //GET - pc.printf("\nTrying to fetch page using GET...\n\r"); - int ret = http.get("http://54.175.222.246/get", str, 512);//IP address is httpbin.org/get - if (!ret) { - pc.printf("Page fetched successfully - read %d characters\n\r", strlen(str)); - pc.printf("Result: %s\n\r", str); - } else { - pc.printf("Error - ret = %d - HTTP return code = %d\n\r", ret, http.getHTTPResponseCode()); + pc.printf("Connected to WiFi. IP address = %s\r\n", wifi.getIPAddress()); + + // For some reason DNS doesn't work. Just use raw IPs for now. + // GET a page... + { + char buffer[1024]; + HTTPResult ret = http.get("http://54.175.222.246/get", buffer, sizeof(buffer)); //IP address is httpbin.org/get + if (ret == HTTP_OK) { + pc.printf("Page fetched successfully - read %d characters\r\n", strlen(buffer)); + pc.printf("Result: %s\n\r", buffer); + } else { + pc.printf("Error - ret = %d - HTTP return code = %d\r\n", ret, http.getHTTPResponseCode()); + } } - //POST - HTTPMap map; - HTTPText inText(str, 512); - map.put("Hello", "World"); - map.put("test", "1234"); - printf("\nTrying to POST data to httpbin.org/post...\n\r"); - ret = http.post("http://54.175.222.246/post", map, &inText);//IP address is httpbin.org/post - if (!ret) + + // POST to a page... { - printf("Executed POST successfully - read %d characters\n\r", strlen(str)); - printf("Result: %s\n\r", str); + HTTPMap map; + char buffer[1024]; + HTTPText inText(buffer, sizeof(buffer)); + map.put("Hello", "World"); + map.put("test", "1234"); + printf("\nTrying to POST data to httpbin.org/post...\r\n"); + HTTPResult ret = http.post("http://54.175.222.246/post", map, &inText); //IP address is httpbin.org/post + if (ret == HTTP_OK) + { + pc.printf("Executed POST successfully - read %d characters\r\n", strlen(buffer)); + pc.printf("Result: %s\n\r", buffer); + } + else + { + pc.printf("Error - ret = %d - HTTP return code = %d\r\n", ret, http.getHTTPResponseCode()); + } } - else - { - printf("Error - ret = %d - HTTP return code = %d\n\r", ret, http.getHTTPResponseCode()); - } - }