Fork of the working HTTPClient adaptation using CyaSSL. This version adds a derivation of HTTPText called HTTPJson to emit JSON text properly. Additionally, the URL parser has defines that permit longer URLs to be utilized.
Dependencies: CyaSSL
Fork of HTTPClient-SSL by
HTTPClient Class Reference
A simple HTTP Client The HTTPClient is composed of:
- The actual client (HTTPClient)
- Classes that act as a data repository, each of which deriving from the HTTPData class (HTTPText for short text content, HTTPFile for file I/O, HTTPMap for key/value pairs, and HTTPStream for streaming purposes)
#include <HTTPClient.h>
Public Member Functions | |
HTTPClient () | |
Instantiate the HTTP client. | |
HTTPResult | basicAuth (const char *user, const char *password) |
Provides a basic authentification feature (Base64 encoded username and password) Pass two NULL pointers to switch back to no authentication. | |
HTTPResult | get (const char *url, IHTTPDataIn *pDataIn, int timeout=HTTP_CLIENT_DEFAULT_TIMEOUT) |
Execute a GET request on the URL Blocks until completion. | |
HTTPResult | get (const char *url, char *result, size_t maxResultLen, int timeout=HTTP_CLIENT_DEFAULT_TIMEOUT) |
Execute a GET request on the URL Blocks until completion This is a helper to directly get a piece of text from a HTTP result. | |
HTTPResult | post (const char *url, const IHTTPDataOut &dataOut, IHTTPDataIn *pDataIn, int timeout=HTTP_CLIENT_DEFAULT_TIMEOUT) |
Execute a POST request on the URL Blocks until completion. | |
HTTPResult | put (const char *url, const IHTTPDataOut &dataOut, IHTTPDataIn *pDataIn, int timeout=HTTP_CLIENT_DEFAULT_TIMEOUT) |
Execute a PUT request on the URL Blocks until completion. | |
HTTPResult | del (const char *url, IHTTPDataIn *pDataIn, int timeout=HTTP_CLIENT_DEFAULT_TIMEOUT) |
Execute a DELETE request on the URL Blocks until completion. | |
int | getHTTPResponseCode () |
Get last request's HTTP response code. |
Detailed Description
A simple HTTP Client The HTTPClient is composed of:
- The actual client (HTTPClient)
- Classes that act as a data repository, each of which deriving from the HTTPData class (HTTPText for short text content, HTTPFile for file I/O, HTTPMap for key/value pairs, and HTTPStream for streaming purposes)
Definition at line 55 of file HTTPClient.h.
Constructor & Destructor Documentation
HTTPClient | ( | ) |
Instantiate the HTTP client.
Definition at line 112 of file HTTPClient.cpp.
Member Function Documentation
HTTPResult basicAuth | ( | const char * | user, |
const char * | password | ||
) |
Provides a basic authentification feature (Base64 encoded username and password) Pass two NULL pointers to switch back to no authentication.
- Parameters:
-
user username to use for authentication, must remain valid durlng the whole HTTP session user password to use for authentication, must remain valid durlng the whole HTTP session
Definition at line 132 of file HTTPClient.cpp.
HTTPResult del | ( | const char * | url, |
IHTTPDataIn * | pDataIn, | ||
int | timeout = HTTP_CLIENT_DEFAULT_TIMEOUT |
||
) |
Execute a DELETE request on the URL Blocks until completion.
- Parameters:
-
url : url on which to execute the request pDataIn : pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL timeout waiting timeout in ms (osWaitForever for blocking function, not recommended)
- Returns:
- 0 on success, HTTP error (<0) on failure
Definition at line 174 of file HTTPClient.cpp.
HTTPResult get | ( | const char * | url, |
IHTTPDataIn * | pDataIn, | ||
int | timeout = HTTP_CLIENT_DEFAULT_TIMEOUT |
||
) |
Execute a GET request on the URL Blocks until completion.
- Parameters:
-
url : url on which to execute the request pDataIn : pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL timeout waiting timeout in ms (osWaitForever for blocking function, not recommended)
- Returns:
- 0 on success, HTTP error (<0) on failure
Definition at line 153 of file HTTPClient.cpp.
HTTPResult get | ( | const char * | url, |
char * | result, | ||
size_t | maxResultLen, | ||
int | timeout = HTTP_CLIENT_DEFAULT_TIMEOUT |
||
) |
Execute a GET request on the URL Blocks until completion This is a helper to directly get a piece of text from a HTTP result.
- Parameters:
-
url : url on which to execute the request result : pointer to a char array in which the result will be stored maxResultLen : length of the char array (including space for the NULL-terminating char) timeout waiting timeout in ms (osWaitForever for blocking function, not recommended)
- Returns:
- 0 on success, HTTP error (<0) on failure
Definition at line 158 of file HTTPClient.cpp.
int getHTTPResponseCode | ( | ) |
Get last request's HTTP response code.
- Returns:
- The HTTP response code of the last request
Definition at line 180 of file HTTPClient.cpp.
HTTPResult post | ( | const char * | url, |
const IHTTPDataOut & | dataOut, | ||
IHTTPDataIn * | pDataIn, | ||
int | timeout = HTTP_CLIENT_DEFAULT_TIMEOUT |
||
) |
Execute a POST request on the URL Blocks until completion.
- Parameters:
-
url : url on which to execute the request dataOut : a IHTTPDataOut instance that contains the data that will be posted pDataIn : pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL timeout waiting timeout in ms (osWaitForever for blocking function, not recommended)
- Returns:
- 0 on success, HTTP error (<0) on failure
Definition at line 164 of file HTTPClient.cpp.
HTTPResult put | ( | const char * | url, |
const IHTTPDataOut & | dataOut, | ||
IHTTPDataIn * | pDataIn, | ||
int | timeout = HTTP_CLIENT_DEFAULT_TIMEOUT |
||
) |
Execute a PUT request on the URL Blocks until completion.
- Parameters:
-
url : url on which to execute the request dataOut : a IHTTPDataOut instance that contains the data that will be put pDataIn : pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL timeout waiting timeout in ms (osWaitForever for blocking function, not recommended)
- Returns:
- 0 on success, HTTP error (<0) on failure
Definition at line 169 of file HTTPClient.cpp.
Generated on Wed Jul 13 2022 03:20:43 by 1.7.2