KanoopProtocolQt 1.2.3
Qt HTTP operations and MQTT client library
Loading...
Searching...
No Matches
HttpUpload Class Reference

HTTP multipart file upload operation executed asynchronously on a dedicated thread. More...

#include <httpupload.h>

+ Inheritance diagram for HttpUpload:
+ Collaboration diagram for HttpUpload:

Signals

void uploadProgress (uint64_t sent, uint64_t total)
 Emitted to report upload progress.
 
- Signals inherited from HttpOperation
void operationComplete ()
 Emitted when the HTTP operation has completed.
 

Public Member Functions

 HttpUpload (const QString &url, const QString &filename=QString())
 Construct an HTTP upload operation for the given URL and optional filename.
 
QString filename () const
 Return the filename to be uploaded.
 
void setFilename (const QString &value)
 Set the filename to be uploaded.
 
void addParameter (const QString &key, const QString &value)
 Add a form parameter to the multipart upload.
 
- Public Member Functions inherited from HttpOperation
virtual ~HttpOperation ()
 Destructor.
 
QString url () const
 Return the target URL of this operation.
 
HttpKnownHeaders headers () const
 Return the known HTTP headers set on this operation.
 
HttpCustomHeaders customHeaders () const
 Return the custom HTTP headers set on this operation.
 
void appendHeader (QNetworkRequest::KnownHeaders type, const QByteArray &value)
 Append a known HTTP header to the request.
 
void appendHeader (const QString &headerName, const QByteArray &value)
 Append a custom HTTP header to the request.
 
void abortOperation ()
 Abort the running HTTP operation.
 
QList< QNetworkCookie > requestCookies () const
 Return the cookies to be sent with the request.
 
void setRequestCookies (const QList< QNetworkCookie > &value)
 Set the cookies to be sent with the request.
 
QList< QNetworkCookie > responseCookies () const
 Return the cookies received in the response.
 
bool isVerifyPeer () const
 Return whether peer SSL certificate verification is enabled.
 
void setVerifyPeer (bool value)
 Enable or disable peer SSL certificate verification.
 
bool isSelfSignedCertificateErrorIgnored () const
 Return whether self-signed certificate errors are being ignored.
 
void ignoreSelfSignedCertificate ()
 Configure the operation to ignore self-signed certificate errors.
 
TimeSpan transferTimeout () const
 Return the transfer timeout duration.
 
void setTransferTimeout (const TimeSpan &value)
 Set the transfer timeout duration.
 
QNetworkReply::NetworkError networkError () const
 Return the network error from the completed operation.
 
QString reasonPhrase () const
 Return the HTTP reason phrase from the response.
 
QByteArray responseBody () const
 Return the response body data.
 
int statusCode () const
 Return the HTTP status code from the response.
 
TimeSpan duration () const
 Return the wall-clock duration of the HTTP operation.
 
QString getRequestMethodString () const
 Return a human-readable string for this operation's request method.
 
bool isHttps () const
 Return whether this operation uses HTTPS.
 

Protected Member Functions

virtual void execute () override
 Execute the multipart file upload.
 
- Protected Member Functions inherited from HttpOperation
 HttpOperation (const QString &url, RequestMethod method)
 Construct an HTTP operation for the given URL and request method.
 
virtual void postReplyHook (QNetworkReply *)
 Hook called after the network reply is received.
 
void setUrl (const QString &value)
 Set the target URL of this operation.
 
QNetworkAccessManager * networkAccessManager ()
 Return the shared network access manager, creating it if necessary.
 
void setReply (QNetworkReply *reply)
 Store the network reply and connect its signals.
 
void appendHeadersToRequest (QNetworkRequest *request)
 Append all configured headers to the given network request.
 
void configureSsl (QNetworkRequest *request)
 Configure SSL settings on the given network request.
 
virtual void threadFinished () override
 Called when the operation thread finishes.
 

Additional Inherited Members

- Public Types inherited from HttpOperation
enum  RequestMethod {
  UnknownMethod = 0x0000 , Get = 0x0001 , Put = 0x0002 , Delete = 0x0004 ,
  Post = 0x0008 , Head = 0x0010 , Patch = 0x0040 , MultipartUpload = 0x1000
}
 Enumeration of supported HTTP request methods. More...
 
- Static Public Member Functions inherited from HttpOperation
static QString getRequestMethodString (RequestMethod method)
 Return a human-readable string for the given request method.
 
- Protected Slots inherited from HttpOperation
void onReplyFinished ()
 Handle the network reply finished signal.
 
void onSslErrors (const QList< QSslError > &errors)
 Handle SSL errors from the network reply.
 
void onReplyError (QNetworkReply::NetworkError error)
 Handle a network error from the reply.
 

Detailed Description

HTTP multipart file upload operation executed asynchronously on a dedicated thread.

Definition at line 7 of file httpupload.h.

Constructor & Destructor Documentation

◆ HttpUpload()

HttpUpload::HttpUpload ( const QString &  url,
const QString &  filename = QString() 
)
inline

Construct an HTTP upload operation for the given URL and optional filename.

Parameters
urlThe target URL.
filenameThe path to the file to upload.

Definition at line 14 of file httpupload.h.

Member Function Documentation

◆ addParameter()

void HttpUpload::addParameter ( const QString &  key,
const QString &  value 
)

Add a form parameter to the multipart upload.

Parameters
keyThe parameter name.
valueThe parameter value.

◆ execute()

virtual void HttpUpload::execute ( )
overrideprotectedvirtual

Execute the multipart file upload.

Implements HttpOperation.

◆ filename()

QString HttpUpload::filename ( ) const
inline

Return the filename to be uploaded.

Returns
The file path string.

Definition at line 20 of file httpupload.h.

◆ setFilename()

void HttpUpload::setFilename ( const QString &  value)
inline

Set the filename to be uploaded.

Parameters
valueThe file path string.

Definition at line 24 of file httpupload.h.

◆ uploadProgress

void HttpUpload::uploadProgress ( uint64_t  sent,
uint64_t  total 
)
signal

Emitted to report upload progress.

Parameters
sentThe number of bytes sent so far.
totalThe total number of bytes to send.

The documentation for this class was generated from the following file: