Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of http-example by
main-http-ipv6.cpp
00001 #include "select-demo.h" 00002 00003 #if DEMO == DEMO_HTTP_IPV6 00004 00005 #include "mbed.h" 00006 #include "easy-connect.h" 00007 #include "http_request.h" 00008 00009 void dump_response(HttpResponse* res) { 00010 printf("Status: %d - %s\n", res->get_status_code(), res->get_status_message().c_str()); 00011 00012 printf("Headers:\n"); 00013 for (size_t ix = 0; ix < res->get_headers_length(); ix++) { 00014 printf("\t%s: %s\n", res->get_headers_fields()[ix]->c_str(), res->get_headers_values()[ix]->c_str()); 00015 } 00016 printf("\nBody (%d bytes):\n\n%s\n", res->get_body_length(), res->get_body_as_string().c_str()); 00017 } 00018 00019 int main() { 00020 // Connect to the network (see mbed_app.json for the connectivity method used) 00021 NetworkInterface* network = easy_connect(true); 00022 if (!network) { 00023 printf("Cannot connect to the network, see serial output"); 00024 return 1; 00025 } 00026 00027 // Do a GET request to icanhazip.com which returns the public IPv6 address for the device 00028 // This page is only accessible over IPv6 00029 { 00030 // By default the body is automatically parsed and stored in a buffer, this is memory heavy. 00031 // To receive chunked response, pass in a callback as last parameter to the constructor. 00032 HttpRequest* get_req = new HttpRequest(network, HTTP_GET, "http://ipv6.icanhazip.com"); 00033 00034 HttpResponse* get_res = get_req->send(); 00035 if (!get_res) { 00036 printf("HttpRequest failed (error code %d)\n", get_req->get_error()); 00037 return 1; 00038 } 00039 00040 printf("\n----- HTTP GET response -----\n"); 00041 dump_response(get_res); 00042 00043 delete get_req; 00044 } 00045 00046 wait(osWaitForever); 00047 } 00048 00049 #endif
Generated on Fri Jul 15 2022 13:51:28 by
1.7.2
