WebAPIに繋ぐためのテスト用です。
Dependencies: EthernetNetIf HTTPClient_ToBeRemoved mbed
Fork of WebApiTest by
main.cpp@1:90bee12c6c74, 2015-09-14 (annotated)
- Committer:
- jksoft
- Date:
- Mon Sep 14 21:03:05 2015 +0000
- Revision:
- 1:90bee12c6c74
- Parent:
- 0:5fdf32706674
????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jksoft | 0:5fdf32706674 | 1 | #include "mbed.h" |
jksoft | 0:5fdf32706674 | 2 | #include "EthernetNetIf.h" |
jksoft | 0:5fdf32706674 | 3 | #include "TextLCD.h" |
jksoft | 0:5fdf32706674 | 4 | #include "HTTPClient.h" |
jksoft | 0:5fdf32706674 | 5 | |
jksoft | 0:5fdf32706674 | 6 | |
jksoft | 0:5fdf32706674 | 7 | EthernetNetIf eth; |
jksoft | 0:5fdf32706674 | 8 | HTTPClient http; |
jksoft | 0:5fdf32706674 | 9 | |
jksoft | 0:5fdf32706674 | 10 | int j_paser( const char *buf , char *word , char *out ) |
jksoft | 0:5fdf32706674 | 11 | { |
jksoft | 0:5fdf32706674 | 12 | int i = 0; |
jksoft | 0:5fdf32706674 | 13 | char *p; |
jksoft | 0:5fdf32706674 | 14 | char _word[64] = "\"\0"; |
jksoft | 0:5fdf32706674 | 15 | |
jksoft | 0:5fdf32706674 | 16 | strcat(_word , word ); |
jksoft | 0:5fdf32706674 | 17 | strcat(_word , "\"" ); |
jksoft | 0:5fdf32706674 | 18 | |
jksoft | 0:5fdf32706674 | 19 | p = strstr( (char*)buf , _word ) + 2 + strlen(_word); |
jksoft | 0:5fdf32706674 | 20 | |
jksoft | 0:5fdf32706674 | 21 | while( (p[i] != ',')&&(p[i] != '\n') ) |
jksoft | 0:5fdf32706674 | 22 | { |
jksoft | 0:5fdf32706674 | 23 | out[i] = p[i]; |
jksoft | 0:5fdf32706674 | 24 | i++; |
jksoft | 0:5fdf32706674 | 25 | } |
jksoft | 0:5fdf32706674 | 26 | out[i] = '\0'; |
jksoft | 0:5fdf32706674 | 27 | |
jksoft | 0:5fdf32706674 | 28 | return(i); |
jksoft | 0:5fdf32706674 | 29 | } |
jksoft | 0:5fdf32706674 | 30 | |
jksoft | 0:5fdf32706674 | 31 | int main(void) { |
jksoft | 0:5fdf32706674 | 32 | |
jksoft | 0:5fdf32706674 | 33 | char year[32]; |
jksoft | 0:5fdf32706674 | 34 | char month[32]; |
jksoft | 0:5fdf32706674 | 35 | char day[32]; |
jksoft | 0:5fdf32706674 | 36 | char hour[32]; |
jksoft | 0:5fdf32706674 | 37 | char usage[32]; |
jksoft | 0:5fdf32706674 | 38 | char capacity[32]; |
jksoft | 0:5fdf32706674 | 39 | |
jksoft | 0:5fdf32706674 | 40 | EthernetErr ethErr = eth.setup(); |
jksoft | 0:5fdf32706674 | 41 | if(ethErr) |
jksoft | 0:5fdf32706674 | 42 | { |
jksoft | 1:90bee12c6c74 | 43 | printf("Ethernet err.\r\n"); |
jksoft | 0:5fdf32706674 | 44 | return(-1); |
jksoft | 0:5fdf32706674 | 45 | } |
jksoft | 0:5fdf32706674 | 46 | |
jksoft | 1:90bee12c6c74 | 47 | printf("Getting info.\r\n"); |
jksoft | 0:5fdf32706674 | 48 | |
jksoft | 0:5fdf32706674 | 49 | HTTPText txt; |
jksoft | 0:5fdf32706674 | 50 | |
jksoft | 0:5fdf32706674 | 51 | HTTPResult r = http.get("http://tepco-usage-api.appspot.com/latest.json", &txt); |
jksoft | 0:5fdf32706674 | 52 | |
jksoft | 0:5fdf32706674 | 53 | if(r==HTTP_OK) |
jksoft | 0:5fdf32706674 | 54 | { |
jksoft | 0:5fdf32706674 | 55 | j_paser(txt.gets() , "year" , year); |
jksoft | 0:5fdf32706674 | 56 | j_paser(txt.gets() , "month" , month); |
jksoft | 0:5fdf32706674 | 57 | j_paser(txt.gets() , "day" , day); |
jksoft | 0:5fdf32706674 | 58 | j_paser(txt.gets() , "hour" , hour); |
jksoft | 0:5fdf32706674 | 59 | j_paser(txt.gets() , "usage" , usage); |
jksoft | 0:5fdf32706674 | 60 | j_paser(txt.gets() , "capacity" , capacity); |
jksoft | 0:5fdf32706674 | 61 | |
jksoft | 1:90bee12c6c74 | 62 | printf("%s/%s/%s %sh\r\n",year,month,day,hour); |
jksoft | 1:90bee12c6c74 | 63 | printf("%s/%s %3.1f%%\r\n",usage,capacity,(((float)atoi(usage)/(float)atoi(capacity))*100.0)); |
jksoft | 0:5fdf32706674 | 64 | } |
jksoft | 0:5fdf32706674 | 65 | else |
jksoft | 0:5fdf32706674 | 66 | { |
jksoft | 1:90bee12c6c74 | 67 | printf("Http get err.\r\n"); |
jksoft | 0:5fdf32706674 | 68 | return(-1); |
jksoft | 0:5fdf32706674 | 69 | } |
jksoft | 0:5fdf32706674 | 70 | |
jksoft | 0:5fdf32706674 | 71 | while(1) |
jksoft | 0:5fdf32706674 | 72 | { |
jksoft | 0:5fdf32706674 | 73 | |
jksoft | 0:5fdf32706674 | 74 | } |
jksoft | 0:5fdf32706674 | 75 | |
jksoft | 0:5fdf32706674 | 76 | return(0); |
jksoft | 0:5fdf32706674 | 77 | } |