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.
Dependencies: mbed-http
Diff: source/main-https.cpp
- Revision:
- 5:42f713b19337
- Parent:
- 4:27fd8efb5bab
- Child:
- 7:5d32909f77de
diff -r 27fd8efb5bab -r 42f713b19337 source/main-https.cpp
--- a/source/main-https.cpp Thu Feb 23 12:36:59 2017 +0100
+++ b/source/main-https.cpp Thu Feb 23 13:58:24 2017 +0100
@@ -67,7 +67,7 @@
for (size_t ix = 0; ix < res->get_headers_length(); ix++) {
mbedtls_printf("\t%s: %s\n", res->get_headers_fields()[ix].c_str(), res->get_headers_values()[ix].c_str());
}
- mbedtls_printf("\nBody:\n\n%s\n", res->get_body().c_str());
+ mbedtls_printf("\nBody (%d bytes):\n\n%s\n", res->get_body_length(), res->get_body_as_string().c_str());
}
int main() {
@@ -78,42 +78,46 @@
return 1;
}
- printf("\n----- HTTPS GET request -----\n");
+ // GET request to developer.mbed.org
+ {
+ printf("\n----- HTTPS GET request -----\n");
- // @todo: when I declare this on the stack we hard fault (run out of memory??)
- HttpsRequest* get_req = new HttpsRequest(network, SSL_CA_PEM, HTTP_GET, "https://developer.mbed.org/media/uploads/mbed_official/hello.txt");
- get_req->set_debug(true);
+ HttpsRequest* get_req = new HttpsRequest(network, SSL_CA_PEM, HTTP_GET, "https://developer.mbed.org/media/uploads/mbed_official/hello.txt");
+ get_req->set_debug(true);
- HttpResponse* get_res = get_req->send();
- if (!get_res) {
- printf("HttpRequest failed (error code %d)\n", get_req->get_error());
- return 1;
+ HttpResponse* get_res = get_req->send();
+ if (!get_res) {
+ printf("HttpRequest failed (error code %d)\n", get_req->get_error());
+ return 1;
+ }
+ printf("\n----- HTTPS GET response -----\n");
+ dump_response(get_res);
+
+ delete get_req;
}
- printf("\n----- HTTPS GET response -----\n");
- dump_response(get_res);
-
- delete get_req;
// POST request to httpbin.org
- printf("\n----- HTTPS POST request -----\n");
+ {
+ printf("\n----- HTTPS POST request -----\n");
- HttpsRequest* post_req = new HttpsRequest(network, SSL_CA_PEM, HTTP_POST, "https://httpbin.org/post");
- post_req->set_debug(true);
- post_req->set_header("Content-Type", "application/json");
+ HttpsRequest* post_req = new HttpsRequest(network, SSL_CA_PEM, HTTP_POST, "https://httpbin.org/post");
+ post_req->set_debug(true);
+ post_req->set_header("Content-Type", "application/json");
- const char body[] = "{\"hello\":\"world\"}";
+ const char body[] = "{\"hello\":\"world\"}";
- HttpResponse* post_res = post_req->send(body, strlen(body));
- if (!post_res) {
- printf("HttpRequest failed (error code %d)\n", post_req->get_error());
- return 1;
+ HttpResponse* post_res = post_req->send(body, strlen(body));
+ if (!post_res) {
+ printf("HttpRequest failed (error code %d)\n", post_req->get_error());
+ return 1;
+ }
+
+ printf("\n----- HTTPS POST response -----\n");
+ dump_response(post_res);
+
+ delete post_req;
}
- printf("\n----- HTTP POST response -----\n");
- dump_response(post_res);
-
- delete post_req;
-
Thread::wait(osWaitForever);
}