Public Types |
Public Member Functions |
Public Attributes |
Protected Attributes |
Friends |
List of all members
HttpRequest Class Reference
#include <HttpRequest.h>
Collaboration diagram for HttpRequest:
Public Types | |
using | SslInitDelegate = Delegate< void(Ssl::Session &session, HttpRequest &request)> |
Callback delegate type used to initialise an SSL session for a given request. More... | |
Public Member Functions | |
HttpRequest () | |
HttpRequest (const Url &uri) | |
HttpRequest (const HttpRequest &value) | |
Copy constructor. More... | |
HttpRequest * | clone () const |
Clone this request into a new object using the copy constructor. More... | |
HttpRequest & | operator= (const HttpRequest &rhs) |
~HttpRequest () | |
HttpRequest * | setURL (const Url &uri) |
HttpRequest * | setMethod (HttpMethod method) |
HttpRequest * | setHeaders (const HttpHeaders &headers) |
HttpRequest * | setHeader (const String &name, const String &value) |
HttpRequest * | setPostParameters (const HttpParams ¶ms) |
HttpRequest * | setPostParameter (const String &name, const String &value) |
HttpRequest * | setFile (const String &formElementName, ReadWriteStream *stream) |
Sets a file to be sent. More... | |
HttpRequest * | setAuth (AuthAdapter *adapter) |
const String & | getHeader (const String &name) |
const String & | getPostParameter (const String &name) |
String | getPath () |
String | getQueryParameter (const String ¶meterName, const String &defaultValue=nullptr) const |
String | getBody () |
Returns content from the body stream as string. More... | |
IDataSourceStream * | getBodyStream () |
Return the current body stream. More... | |
HttpRequest * | setBody (const String &body) |
HttpRequest * | setBody (IDataSourceStream *stream) |
HttpRequest * | setBody (const uint8_t *rawData, size_t length) |
HttpRequest * | setResponseStream (ReadWriteStream *stream) |
Instead of storing the response body we can set a stream that will take care to process it. More... | |
ReadWriteStream * | getResponseStream () |
Get the response stream (if any) More... | |
HttpRequest * | onHeadersComplete (RequestHeadersCompletedDelegate delegateFunction) |
HttpRequest * | onBody (RequestBodyDelegate delegateFunction) |
HttpRequest * | onRequestComplete (RequestCompletedDelegate delegateFunction) |
void | reset () |
Clear buffers and reset to default state in preparation for another request. More... | |
HttpRequest * | onSslInit (SslInitDelegate delegate) |
To customise SSL session options, provide a callback. More... | |
String | toString () |
Tries to present a readable version of the current request values. More... | |
Public Attributes | |
Url | uri |
HttpMethod | method = HTTP_GET |
HttpHeaders | headers |
HttpParams | postParams |
HttpFiles | files |
int | retries = 0 |
void * | args = nullptr |
Protected Attributes | |
RequestHeadersCompletedDelegate | headersCompletedDelegate |
RequestBodyDelegate | requestBodyDelegate |
RequestCompletedDelegate | requestCompletedDelegate |
SslInitDelegate | sslInitDelegate |
IDataSourceStream * | bodyStream = nullptr |
ReadWriteStream * | responseStream = nullptr |
User-requested stream to store response. More... | |
AuthAdapter * | auth = nullptr |
Friends | |
class | HttpClientConnection |
class | HttpServerConnection |
Member Typedef Documentation
◆ SslInitDelegate
using HttpRequest::SslInitDelegate = Delegate<void(Ssl::Session& session, HttpRequest& request)> |
Callback delegate type used to initialise an SSL session for a given request.
Constructor & Destructor Documentation
◆ HttpRequest() [1/3]
|
inline |
◆ HttpRequest() [2/3]
|
inline |
◆ HttpRequest() [3/3]
|
inline |
Copy constructor.
- Note
- Internal streams are not copied so these must be dealt with afterwards
◆ ~HttpRequest()
|
inline |
Member Function Documentation
◆ clone()
|
inline |
Clone this request into a new object using the copy constructor.
- Return values
-
HttpRequest* The new request object
◆ getBody()
String HttpRequest::getBody | ( | ) |
◆ getBodyStream()
|
inline |
Return the current body stream.
- Return values
-
IDataSourceStream*
- Note
- may return null
◆ getHeader()
◆ getPath()
|
inline |
- Deprecated:
- Use
uri.Path
instead
◆ getPostParameter()
◆ getQueryParameter()
|
inline |
◆ getResponseStream()
|
inline |
Get the response stream (if any)
◆ onBody()
|
inline |
◆ onHeadersComplete()
|
inline |
◆ onRequestComplete()
|
inline |
◆ onSslInit()
|
inline |
To customise SSL session options, provide a callback.
- Parameters
-
delegate Invoked before creating SSL connection
◆ operator=()
|
inline |
- Deprecated:
- Please use
clone()
instead
◆ reset()
void HttpRequest::reset | ( | ) |
Clear buffers and reset to default state in preparation for another request.
◆ setAuth()
|
inline |
◆ setBody() [1/3]
|
inline |
◆ setBody() [2/3]
HttpRequest* HttpRequest::setBody | ( | IDataSourceStream * | stream | ) |
◆ setBody() [3/3]
HttpRequest* HttpRequest::setBody | ( | const uint8_t * | rawData, |
size_t | length | ||
) |
◆ setFile()
|
inline |
Sets a file to be sent.
- Parameters
-
formElementName The name of the element in the form stream Pointer to the stream (doesn't have to be a FileStream)
- Return values
-
HttpRequest*
◆ setHeader()
|
inline |
◆ setHeaders()
|
inline |
◆ setMethod()
|
inline |
◆ setPostParameter()
|
inline |
◆ setPostParameters()
|
inline |
- Deprecated:
- Set postParams directly, i.e.
request.postParams = params
◆ setResponseStream()
HttpRequest* HttpRequest::setResponseStream | ( | ReadWriteStream * | stream | ) |
Instead of storing the response body we can set a stream that will take care to process it.
- Parameters
-
stream
- Return values
-
HttpRequest*
- Note
- The response to this request will be stored in the user-provided stream.
◆ setURL()
|
inline |
◆ toString()
String HttpRequest::toString | ( | ) |
Tries to present a readable version of the current request values.
- Return values
-
String
Friends And Related Function Documentation
◆ HttpClientConnection
|
friend |
◆ HttpServerConnection
|
friend |
Member Data Documentation
◆ args
void* HttpRequest::args = nullptr |
◆ auth
|
protected |
◆ bodyStream
|
protected |
◆ files
HttpFiles HttpRequest::files |
◆ headers
HttpHeaders HttpRequest::headers |
◆ headersCompletedDelegate
|
protected |
◆ method
HttpMethod HttpRequest::method = HTTP_GET |
◆ postParams
HttpParams HttpRequest::postParams |
◆ requestBodyDelegate
|
protected |
◆ requestCompletedDelegate
|
protected |
◆ responseStream
|
protected |
User-requested stream to store response.
◆ retries
int HttpRequest::retries = 0 |
◆ sslInitDelegate
|
protected |
◆ uri
Url HttpRequest::uri |
The documentation for this class was generated from the following file: