HttpRequest.h
Go to the documentation of this file.
27 using RequestHeadersCompletedDelegate = Delegate<int(HttpConnection& client, HttpResponse& response)>;
28 using RequestBodyDelegate = Delegate<int(HttpConnection& client, const char* at, size_t length)>;
56 headersCompletedDelegate(value.headersCompletedDelegate), requestBodyDelegate(value.requestBodyDelegate),
RequestHeadersCompletedDelegate headersCompletedDelegate
Definition: HttpRequest.h:295
IDataSourceStream * stream
The currently active stream being sent.
Definition: TcpClient.h:165
HttpRequest * onRequestComplete(RequestCompletedDelegate delegateFunction)
Definition: HttpRequest.h:242
virtual bool moveString(String &s)
Memory-based streams may be able to move content into a String.
Definition: DataSourceStream.h:190
static String toString(const HttpRequest &req)
Tries to present a readable version of the request.
Definition: HttpRequest.h:278
Provides http base used for client and server connections.
Definition: HttpConnection.h:27
virtual void setRequest(HttpRequest *request)=0
HttpRequest * setHeaders(const HttpHeaders &headers)
Definition: HttpRequest.h:88
const String & getPostParameter(const String &name)
Get POST parameter value.
Definition: HttpRequest.h:146
HttpRequest * onBody(RequestBodyDelegate delegateFunction)
Definition: HttpRequest.h:236
RequestCompletedDelegate requestCompletedDelegate
Definition: HttpRequest.h:297
Definition: HttpClientConnection.h:28
String getBody()
Moves content from the body stream into a String.
Definition: HttpRequest.h:168
Represents either an incoming or outgoing response to a HTTP request.
Definition: HttpResponse.h:25
int retries
how many times the request should be send again...
Definition: HttpRequest.h:290
HttpRequest(const HttpRequest &value)
Copy constructor.
Definition: HttpRequest.h:54
Definition: HttpRequestAuth.h:19
String getQueryParameter(const String &name, const String &defaultValue=nullptr) const
Get parameter from query fields.
Definition: HttpRequest.h:156
ReadWriteStream * getResponseStream()
Get the response stream (if any)
Definition: HttpRequest.h:225
ReadWriteStream * responseStream
User-requested stream to store response.
Definition: HttpRequest.h:301
void reset()
Clear buffers and reset to default state in preparation for another request.
void setMultiple(const HttpHeaders &headers)
HttpRequest * setResponseStream(ReadWriteStream *stream)
Instead of storing the response body we can set a stream that will take care to process it.
const char * c_str() const
Get a constant (un-modifiable) pointer to String content.
Definition: WString.h:616
void * args
Used to store data that should be valid during a single request.
Definition: HttpRequest.h:292
HttpRequest * setFile(const String &formElementName, ReadWriteStream *stream)
Sets a file to be sent.
Definition: HttpRequest.h:113
const String & getHeader(const String &name)
Get header field value.
Definition: HttpRequest.h:136
HttpRequest * onSslInit(SslInitDelegate delegate)
To customise SSL session options, provide a callback.
Definition: HttpRequest.h:260
HttpRequest * clone() const
Clone this request into a new object using the copy constructor.
Definition: HttpRequest.h:66
RequestBodyDelegate requestBodyDelegate
Definition: HttpRequest.h:296
HttpMethod
Strongly-typed enum which shadows http_method from http_parser library.
Definition: HttpCommon.h:42
HttpRequest * onHeadersComplete(RequestHeadersCompletedDelegate delegateFunction)
Definition: HttpRequest.h:230
HttpRequest * setPostParameter(const String &name, const String &value)
Definition: HttpRequest.h:100
HttpRequest * setHeader(const String &name, const String &value)
Definition: HttpRequest.h:94
IDataSourceStream * getBodyStream()
Return the current body stream.
Definition: HttpRequest.h:182
Definition: HttpServerConnection.h:33
HttpRequest * setBody(const String &body)
Set body from String object.
Definition: HttpRequest.h:193
size_t length(void) const
Obtain the String length in characters, excluding NUL terminator.
Definition: WString.h:243
String toString() const
Tries to present a readable version of the current request values.