Donatien Garnier / Mbed 2 deprecated NetHttpClientStreamingExample

Dependencies:   mbed

Committer:
donatien
Date:
Thu May 27 10:16:27 2010 +0000
Revision:
0:b6b9d1b95cc7
Child:
1:0e4f1cc78052

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
donatien 0:b6b9d1b95cc7 1 #include "mbed.h"
donatien 0:b6b9d1b95cc7 2 #include "EthernetNetIf.h"
donatien 0:b6b9d1b95cc7 3 #include "HttpClient.h"
donatien 0:b6b9d1b95cc7 4
donatien 0:b6b9d1b95cc7 5 EthernetNetIf eth;
donatien 0:b6b9d1b95cc7 6 HttpClient http;
donatien 0:b6b9d1b95cc7 7
donatien 0:b6b9d1b95cc7 8 HttpResult result;
donatien 0:b6b9d1b95cc7 9 bool completed = false;
donatien 0:b6b9d1b95cc7 10 void request_callback(HttpResult r)
donatien 0:b6b9d1b95cc7 11 {
donatien 0:b6b9d1b95cc7 12 result = r;
donatien 0:b6b9d1b95cc7 13 printf("\r\n-----Err %d-----\r\n", r);
donatien 0:b6b9d1b95cc7 14 completed = true;
donatien 0:b6b9d1b95cc7 15 }
donatien 0:b6b9d1b95cc7 16
donatien 0:b6b9d1b95cc7 17 Serial pc(USBTX, USBRX);
donatien 0:b6b9d1b95cc7 18
donatien 0:b6b9d1b95cc7 19 int main() {
donatien 0:b6b9d1b95cc7 20
donatien 0:b6b9d1b95cc7 21 pc.baud(115200);
donatien 0:b6b9d1b95cc7 22
donatien 0:b6b9d1b95cc7 23 printf("Start\n");
donatien 0:b6b9d1b95cc7 24
donatien 0:b6b9d1b95cc7 25 printf("\r\nSetting up...\r\n");
donatien 0:b6b9d1b95cc7 26 EthernetErr ethErr = eth.setup();
donatien 0:b6b9d1b95cc7 27 if(ethErr)
donatien 0:b6b9d1b95cc7 28 {
donatien 0:b6b9d1b95cc7 29 printf("Error %d in setup.\n", ethErr);
donatien 0:b6b9d1b95cc7 30 return -1;
donatien 0:b6b9d1b95cc7 31 }
donatien 0:b6b9d1b95cc7 32 printf("\r\nSetup OK\r\n");
donatien 0:b6b9d1b95cc7 33
donatien 0:b6b9d1b95cc7 34 HttpStream stream;
donatien 0:b6b9d1b95cc7 35
donatien 0:b6b9d1b95cc7 36 char BigBuf[1024 + 1] = {0};
donatien 0:b6b9d1b95cc7 37 stream.readNext((byte*)BigBuf, 1024);
donatien 0:b6b9d1b95cc7 38
donatien 0:b6b9d1b95cc7 39 HttpResult r = http.get("http://mbed.org/", &stream, request_callback);
donatien 0:b6b9d1b95cc7 40
donatien 0:b6b9d1b95cc7 41 while(!completed)
donatien 0:b6b9d1b95cc7 42 {
donatien 0:b6b9d1b95cc7 43 Net::poll();
donatien 0:b6b9d1b95cc7 44 if(stream.readable())
donatien 0:b6b9d1b95cc7 45 {
donatien 0:b6b9d1b95cc7 46 BigBuf[stream.readLen()+1] = 0;
donatien 0:b6b9d1b95cc7 47 printf("%s",BigBuf);
donatien 0:b6b9d1b95cc7 48 stream.readNext((byte*)BigBuf, 1024);
donatien 0:b6b9d1b95cc7 49 }
donatien 0:b6b9d1b95cc7 50 }
donatien 0:b6b9d1b95cc7 51 printf("\r\n--------------\r\n");
donatien 0:b6b9d1b95cc7 52 if(result == HTTP_OK)
donatien 0:b6b9d1b95cc7 53 {
donatien 0:b6b9d1b95cc7 54 printf("Read completely\n");
donatien 0:b6b9d1b95cc7 55 }
donatien 0:b6b9d1b95cc7 56 else
donatien 0:b6b9d1b95cc7 57 {
donatien 0:b6b9d1b95cc7 58 printf("Error %d\n", r);
donatien 0:b6b9d1b95cc7 59 }
donatien 0:b6b9d1b95cc7 60
donatien 0:b6b9d1b95cc7 61 while(1)
donatien 0:b6b9d1b95cc7 62 {
donatien 0:b6b9d1b95cc7 63
donatien 0:b6b9d1b95cc7 64 }
donatien 0:b6b9d1b95cc7 65
donatien 0:b6b9d1b95cc7 66 return 0;
donatien 0:b6b9d1b95cc7 67
donatien 0:b6b9d1b95cc7 68 }