Hiroshi Yamaguchi / Mbed 2 deprecated SimpleSocketExamples 1.0

Dependencies:   EthernetNetIf SimpleSocket 1.0 mbed

Committer:
yamaguch
Date:
Fri Aug 19 02:42:25 2011 +0000
Revision:
13:1adb19edf716
Parent:
12:52170a866d4a
Child:
15:ae9aff693b07
fixed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
yamaguch 8:b35559c14d17 1 #include "mbed.h"
yamaguch 7:d57efbdb6517 2 #include "SimpleSocket.h"
yamaguch 7:d57efbdb6517 3
yamaguch 8:b35559c14d17 4 void httpclient(char *url) {
yamaguch 8:b35559c14d17 5 char host[64], domain[64], path[128];
yamaguch 8:b35559c14d17 6 int port = 80;
yamaguch 8:b35559c14d17 7 sscanf(url, "http://%[^/]%s", host, path);
yamaguch 8:b35559c14d17 8 sscanf(host, "%[^:]:%d", domain, &port);
yamaguch 10:62ce72ee3e91 9
yamaguch 13:1adb19edf716 10 ClientSocket client(domain, port);
yamaguch 13:1adb19edf716 11 // wait(1);
yamaguch 13:1adb19edf716 12 // Net::poll();
yamaguch 13:1adb19edf716 13 //TCPSOCKET_CONNECTED: Connected to host.
yamaguch 13:1adb19edf716 14 if (client.connected()) {
yamaguch 13:1adb19edf716 15 // wait(1);
yamaguch 13:1adb19edf716 16 // Net::poll();
yamaguch 13:1adb19edf716 17 // wait(1);
yamaguch 13:1adb19edf716 18 // Net::poll();
yamaguch 13:1adb19edf716 19 printf("*** send: GET %s HTTP/1.0\r\n\r\n***\n", path);
yamaguch 13:1adb19edf716 20 client.writef("GET %s HTTP/1.0\r\n\r\n", path);
yamaguch 13:1adb19edf716 21 printf("*** sent: GET %s HTTP/1.0\r\n\r\n***\n", path);
yamaguch 13:1adb19edf716 22 //TCPSOCKET_WRITEABLE: Can write data to buf.
yamaguch 13:1adb19edf716 23 //TCPSOCKET_READABLE: Data in buf.
yamaguch 11:04c0acd7f510 24
yamaguch 7:d57efbdb6517 25 int total = 0;
yamaguch 13:1adb19edf716 26 while (client.connected()) {
yamaguch 13:1adb19edf716 27 if (client.available()) {
yamaguch 13:1adb19edf716 28 char buf[129];
yamaguch 13:1adb19edf716 29 int len = client.read(buf, sizeof(buf) - 1);
yamaguch 7:d57efbdb6517 30 buf[len] = '\0';
yamaguch 11:04c0acd7f510 31 printf(buf);
yamaguch 7:d57efbdb6517 32 total += len;
yamaguch 7:d57efbdb6517 33 }
yamaguch 7:d57efbdb6517 34 }
yamaguch 13:1adb19edf716 35 printf("\n\n*** Total %d ***\n", total);
yamaguch 7:d57efbdb6517 36 }
yamaguch 4:59056313fbfa 37 }