smd.iotkit2.ch / Mbed 2 deprecated HTTP_POST_ThinkSpeak

Dependencies:   EthernetInterface TMP175 mbed-rtos mbed

Fork of 2-07-04-Uebung by smd.iotkit2.ch

Embed: (wiki syntax)

« Back to documentation index

HTTPClient Class Reference

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)
More...

#include <HTTPClient.h>

Public Member Functions

 HTTPClient ()
 Instantiate the HTTP client.
void 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.
void customHeaders (const char **headers, size_t pairs)
 Set custom headers for request.
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.
void setMaxRedirections (int i=1)
 Set the maximum number of automated redirections.
const char * getLocation ()
 get the redirect location url

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 56 of file HTTPClient.h.


Constructor & Destructor Documentation

HTTPClient (  )

Instantiate the HTTP client.

Definition at line 49 of file HTTPClient.cpp.


Member Function Documentation

void 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:
[in]userusername to use for authentication, must remain valid durlng the whole HTTP session
[in]userpassword to use for authentication, must remain valid durlng the whole HTTP session

Definition at line 62 of file HTTPClient.cpp.

void customHeaders ( const char **  headers,
size_t  pairs 
)

Set custom headers for request.

Pass NULL, 0 to turn off custom headers.

     const char * hdrs[] = 
            {
            "Connection", "keep-alive",
            "Accept", "text/html",
            "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64)",
            "Accept-Encoding", "gzip,deflate,sdch",
            "Accept-Language", "en-US,en;q=0.8",
            };

        http.basicAuth("username", "password");
        http.customHeaders(hdrs, 5);
Parameters:
[in]headersan array (size multiple of two) key-value pairs, must remain valid during the whole HTTP session
[in]pairsnumber of key-value pairs

Definition at line 79 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:
[in]url: url on which to execute the request
[in,out]pDataIn: pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL
[in]timeoutwaiting timeout in ms (osWaitForever for blocking function, not recommended)
Returns:
0 on success, HTTP error (<0) on failure

Definition at line 107 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:
[in]url: url on which to execute the request
[out]result: pointer to a char array in which the result will be stored
[in]maxResultLen: length of the char array (including space for the NULL-terminating char)
[in]timeoutwaiting timeout in ms (osWaitForever for blocking function, not recommended)
Returns:
0 on success, HTTP error (<0) on failure

Definition at line 91 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:
[in]url: url on which to execute the request
[in,out]pDataIn: pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL
[in]timeoutwaiting timeout in ms (osWaitForever for blocking function, not recommended)
Returns:
0 on success, HTTP error (<0) on failure

Definition at line 86 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 113 of file HTTPClient.cpp.

const char* getLocation (  )

get the redirect location url

Returns:
const char pointer to the url.

Definition at line 159 of file HTTPClient.h.

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:
[in]url: url on which to execute the request
[out]dataOut: a IHTTPDataOut instance that contains the data that will be posted
[in,out]pDataIn: pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL
[in]timeoutwaiting timeout in ms (osWaitForever for blocking function, not recommended)
Returns:
0 on success, HTTP error (<0) on failure

Definition at line 97 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:
[in]url: url on which to execute the request
[in]dataOut: a IHTTPDataOut instance that contains the data that will be put
[in,out]pDataIn: pointer to an IHTTPDataIn instance that will collect the data returned by the request, can be NULL
[in]timeoutwaiting timeout in ms (osWaitForever for blocking function, not recommended)
Returns:
0 on success, HTTP error (<0) on failure

Definition at line 102 of file HTTPClient.cpp.

void setMaxRedirections ( int  i = 1 )

Set the maximum number of automated redirections.

Parameters:
[in]iis the number of redirections. Values < 1 are set to 1.

Definition at line 118 of file HTTPClient.cpp.