Fixed custom headers and Basic authorization, added support for redirection, functional file download interface can be used for SW updates and more.

Dependents:   Sample_HTTPClient Sample_HTTPClient LWM2M_NanoService_Ethernet LWM2M_NanoService_Ethernet ... more

Fork of HTTPClient by Vincent Wochnik

More recent changes - added iCal processing.

Derivative of a derivative, however this one works when it comes to supplying Basic authorization to access a protected resource. Some additional changes to the debug interface to clean it up for consistency with many other components I have.

Revision:
33:d4d1475bafc0
Parent:
31:96da7c08b5d0
Child:
34:3556275bebf3
--- a/HTTPClient.cpp	Sat Oct 11 17:26:04 2014 +0000
+++ b/HTTPClient.cpp	Sun Feb 01 16:50:39 2015 +0000
@@ -18,7 +18,7 @@
  */
 
 //Debug is disabled by default
-//#define DEBUG "HTCL"
+#define DEBUG "HTCL"
 #include <cstdio>
 #if (defined(DEBUG) && !defined(TARGET_LPC11U24))
 #define DBG(x, ...)  std::printf("[DBG %s %3d] "x"\r\n", DEBUG, __LINE__, ##__VA_ARGS__);
@@ -85,11 +85,13 @@
 
 HTTPResult HTTPClient::get(const char* url, IHTTPDataIn* pDataIn, int timeout /*= HTTP_CLIENT_DEFAULT_TIMEOUT*/) //Blocking
 {
+    INFO("url: %s, timeout: %d", url, timeout);
     return connect(url, HTTP_GET, NULL, pDataIn, timeout);
 }
 
 HTTPResult HTTPClient::get(const char* url, char* result, size_t maxResultLen, int timeout /*= HTTP_CLIENT_DEFAULT_TIMEOUT*/) //Blocking
 {
+    INFO("url: %s, timeout: %d", url, timeout);
     HTTPText str(result, maxResultLen);
     return get(url, &str, timeout);
 }
@@ -143,6 +145,7 @@
     m_httpResponseCode = 0; //Invalidate code
     m_timeout = timeout;
 
+    INFO("connect(%s,%d,...,%d)", url, method, timeout);
     pDataIn->writeReset();
     if( pDataOut ) {
         pDataOut->readReset();