http

Dependencies:   EthernetInterface HTTPClient mbed-rtos mbed

Committer:
planglois
Date:
Fri Sep 12 17:14:15 2014 +0000
Revision:
0:7c79134d4f23
Child:
1:d29e4c5d19bb
test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
planglois 0:7c79134d4f23 1 #include "mbed.h"
planglois 0:7c79134d4f23 2 #include "EthernetInterface.h"
planglois 0:7c79134d4f23 3 #include "HTTPClient.h"
planglois 0:7c79134d4f23 4
planglois 0:7c79134d4f23 5 EthernetInterface eth;
planglois 0:7c79134d4f23 6 HTTPClient http;
planglois 0:7c79134d4f23 7 char str[512];
planglois 0:7c79134d4f23 8
planglois 0:7c79134d4f23 9 int main()
planglois 0:7c79134d4f23 10 {
planglois 0:7c79134d4f23 11 eth.init(); //Use DHCP
planglois 0:7c79134d4f23 12
planglois 0:7c79134d4f23 13 eth.connect();
planglois 0:7c79134d4f23 14
planglois 0:7c79134d4f23 15 //GET data
planglois 0:7c79134d4f23 16 printf("\nTrying to fetch page...\n");
planglois 0:7c79134d4f23 17 int ret = http.get("http://mbed.org/media/uploads/donatien/hello.txt", str, 128);
planglois 0:7c79134d4f23 18 if (!ret)
planglois 0:7c79134d4f23 19 {
planglois 0:7c79134d4f23 20 printf("Page fetched successfully - read %d characters\n", strlen(str));
planglois 0:7c79134d4f23 21 printf("Result: %s\n", str);
planglois 0:7c79134d4f23 22 }
planglois 0:7c79134d4f23 23 else
planglois 0:7c79134d4f23 24 {
planglois 0:7c79134d4f23 25 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
planglois 0:7c79134d4f23 26 }
planglois 0:7c79134d4f23 27
planglois 0:7c79134d4f23 28 //POST data
planglois 0:7c79134d4f23 29 HTTPMap map;
planglois 0:7c79134d4f23 30 HTTPText inText(str, 512);
planglois 0:7c79134d4f23 31 map.put("Hello", "World");
planglois 0:7c79134d4f23 32 map.put("test", "1234");
planglois 0:7c79134d4f23 33 printf("\nTrying to post data...\n");
planglois 0:7c79134d4f23 34 ret = http.post("http://httpbin.org/post", map, &inText);
planglois 0:7c79134d4f23 35 if (!ret)
planglois 0:7c79134d4f23 36 {
planglois 0:7c79134d4f23 37 printf("Executed POST successfully - read %d characters\n", strlen(str));
planglois 0:7c79134d4f23 38 printf("Result: %s\n", str);
planglois 0:7c79134d4f23 39 }
planglois 0:7c79134d4f23 40 else
planglois 0:7c79134d4f23 41 {
planglois 0:7c79134d4f23 42 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
planglois 0:7c79134d4f23 43 }
planglois 0:7c79134d4f23 44
planglois 0:7c79134d4f23 45 //PUT data
planglois 0:7c79134d4f23 46 strcpy(str, "This is a PUT test!");
planglois 0:7c79134d4f23 47 HTTPText outText(str);
planglois 0:7c79134d4f23 48 //HTTPText inText(str, 512);
planglois 0:7c79134d4f23 49 printf("\nTrying to put resource...\n");
planglois 0:7c79134d4f23 50 ret = http.put("http://httpbin.org/put", outText, &inText);
planglois 0:7c79134d4f23 51 if (!ret)
planglois 0:7c79134d4f23 52 {
planglois 0:7c79134d4f23 53 printf("Executed PUT successfully - read %d characters\n", strlen(str));
planglois 0:7c79134d4f23 54 printf("Result: %s\n", str);
planglois 0:7c79134d4f23 55 }
planglois 0:7c79134d4f23 56 else
planglois 0:7c79134d4f23 57 {
planglois 0:7c79134d4f23 58 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
planglois 0:7c79134d4f23 59 }
planglois 0:7c79134d4f23 60
planglois 0:7c79134d4f23 61 //DELETE data
planglois 0:7c79134d4f23 62 //HTTPText inText(str, 512);
planglois 0:7c79134d4f23 63 printf("\nTrying to delete resource...\n");
planglois 0:7c79134d4f23 64 ret = http.del("http://httpbin.org/delete", &inText);
planglois 0:7c79134d4f23 65 if (!ret)
planglois 0:7c79134d4f23 66 {
planglois 0:7c79134d4f23 67 printf("Executed DELETE successfully - read %d characters\n", strlen(str));
planglois 0:7c79134d4f23 68 printf("Result: %s\n", str);
planglois 0:7c79134d4f23 69 }
planglois 0:7c79134d4f23 70 else
planglois 0:7c79134d4f23 71 {
planglois 0:7c79134d4f23 72 printf("Error - ret = %d - HTTP return code = %d\n", ret, http.getHTTPResponseCode());
planglois 0:7c79134d4f23 73 }
planglois 0:7c79134d4f23 74
planglois 0:7c79134d4f23 75 eth.disconnect();
planglois 0:7c79134d4f23 76
planglois 0:7c79134d4f23 77 while(1) {}
planglois 0:7c79134d4f23 78 }
planglois 0:7c79134d4f23 79