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),
163 String getQueryParameter(const String& parameterName, const String& defaultValue = nullptr) const
HttpRequest * setPostParameters(const HttpParams ¶ms)
Definition: HttpRequest.h:109
HttpRequest * setHeader(const String &name, const String &value)
Definition: HttpRequest.h:100
IDataSourceStream * getBodyStream()
Return the current body stream.
Definition: HttpRequest.h:189
RequestCompletedDelegate requestCompletedDelegate
Definition: HttpRequest.h:294
String getBody()
Moves content from the body stream into a String.
Definition: HttpRequest.h:175
HttpRequest * onBody(RequestBodyDelegate delegateFunction)
Definition: HttpRequest.h:233
const char * c_str() const
Get a constant (un-modifiable) pointer to String content.
Definition: WString.h:641
static String toString(const HttpRequest &req)
Tries to present a readable version of the request.
Definition: HttpRequest.h:275
virtual void setRequest(HttpRequest *request)=0
HttpRequest(const HttpRequest &value)
Copy constructor.
Definition: HttpRequest.h:54
Definition: HttpServerConnection.h:33
const String & getPostParameter(const String &name)
Definition: HttpRequest.h:151
void reset()
Clear buffers and reset to default state in preparation for another request.
String getQueryParameter(const String ¶meterName, const String &defaultValue=nullptr) const
Definition: HttpRequest.h:163
Definition: HttpRequestAuth.h:19
ReadWriteStream * getResponseStream()
Get the response stream (if any)
Definition: HttpRequest.h:222
ReadWriteStream * responseStream
User-requested stream to store response.
Definition: HttpRequest.h:298
size_t length(void) const
Obtain the String length in characters, excluding NUL terminator.
Definition: WString.h:237
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...
HttpMethod
Strongly-typed enum which shadows http_method from http_parser library.
Definition: HttpCommon.h:42
HttpRequest * onSslInit(SslInitDelegate delegate)
To customise SSL session options, provide a callback.
Definition: HttpRequest.h:257
HttpRequest * clone() const
Clone this request into a new object using the copy constructor.
Definition: HttpRequest.h:66
HttpRequest * onHeadersComplete(RequestHeadersCompletedDelegate delegateFunction)
Definition: HttpRequest.h:227
HttpRequest * setFile(const String &formElementName, ReadWriteStream *stream)
Sets a file to be sent.
Definition: HttpRequest.h:128
Provides http base used for client and server connections.
Definition: HttpConnection.h:27
String toString() const
Tries to present a readable version of the current request values.
IDataSourceStream * stream
The currently active stream being sent.
Definition: TcpClient.h:157
virtual bool moveString(String &s)
Memory-based streams may be able to move content into a String.
Definition: DataSourceStream.h:194
HttpRequest * onRequestComplete(RequestCompletedDelegate delegateFunction)
Definition: HttpRequest.h:239
HttpRequest * setPostParameter(const String &name, const String &value)
Definition: HttpRequest.h:115
HttpRequest * setHeaders(const HttpHeaders &headers)
Definition: HttpRequest.h:94
Definition: HttpClientConnection.h:28
RequestBodyDelegate requestBodyDelegate
Definition: HttpRequest.h:293
RequestHeadersCompletedDelegate headersCompletedDelegate
Definition: HttpRequest.h:292