Simple HTTP GET and POST with ESP8266.

Dependencies:   ESP8266Interface HTTPClient-SSL WebSocketClient mbed-rtos mbed

Fork of ESP8266_HTTP_HelloWorld by ESP8266

Revision:
14:1f0a842f8750
Parent:
13:5f2bb0dc134b
Child:
15:4b246689e0e2
--- a/main.cpp	Wed Jun 03 19:03:50 2015 +0000
+++ b/main.cpp	Fri Jun 05 16:17:26 2015 +0000
@@ -1,45 +1,45 @@
 #include "mbed.h"
+#include "HTTPClient.h"
 #include "ESP8266Interface.h"
 #include "TCPSocketConnection.h"
 #include "TCPSocketServer.h"
 #include "Websocket.h"
 
-
-
-ESP8266Interface wifi(D1,D0,D10,"demossid","password",115200); // TX,RX,Reset,SSID,Password,Baud
+ESP8266Interface wifi(D1,D0,D2,"iotlab","42F67YxLX4AawRdcj",115200); // TX,RX,Reset,SSID,Password,Baud
 RawSerial pc(USBTX, USBRX); // tx, rx
- 
-int main() {
+HTTPClient http;
+char str[512];
+int main()
+{
     pc.baud(115200);
     wifi.init(); //Reset
     wifi.connect(); //Use DHCP
-    pc.printf("IP Address is %s\n", wifi.getIPAddress());
     
-    Websocket ws("ws://192.168.1.20:8888/ws");
-    
-    //Check for successful socket connection
-    if(!ws.connect())
-        ws.close();
-    else{
-        char str[100];
-        
-        for(int i=0; i<0x7fffffff; ++i) {
-            // string with a message
-            sprintf(str, "%d WebSocket Hello World over wifi", i);
-            ws.send(str);
-        
-            // clear the buffer and wait a sec...
-            memset(str, 0, 100);
-            wait(0.5f);
-        
-            // websocket server should echo whatever we sent it
-            if (ws.read(str)) {
-                pc.printf("rcv'd: %s\n", str);
-            }
-        }
+    //GET
+    pc.printf("\nTrying to fetch page...\n");
+    int ret = http.get("http://191.239.57.70/", str, 128);
+    if (!ret) {
+        pc.printf("Page fetched successfully - read %d characters\n", strlen(str));
+        pc.printf("Result: %s\n", str);
+    } else {
+        pc.printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
     }
-    ws.close();
-    
-    while(true) {}
+    //POST
+    HTTPMap map;
+    HTTPText inText(str, 512);
+    map.put("Hello", "World");
+    map.put("test", "1234");
+    printf("\nTrying to post data...\n");
+    ret = http.post("http://54.175.222.246/post", map, &inText);
+    if (!ret)
+    {
+      printf("Executed POST successfully - read %d characters\n", strlen(str));
+      printf("Result: %s\n", str);
+    }
+    else
+    {
+      printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
+    }
+
 }
- 
\ No newline at end of file
+