HTTPClient Class
Properties Methods Events Configuration Settings Errors
The HTTPClient class implements client-side functionality of HTTP and HTTPS protocols.
Syntax
HTTPClient
Remarks
HTTPClient provides means of exchanging HTTP messages with HTTP servers. Both plain (HTTP) and secure (HTTPS) connection types are supported.
Features supported
- All standard request types (GET, POST, PUT etc.), plus custom VERBs
- TLS 1.2 and 1.3 (and earlier versions for older servers)
- Strong client and server authentication on TLS and HTTP levels
- Flexible custom header adjustment
- A variety of proxy server types
Configuring the component
HTTPClient is very easy to configure. In some cases, like in the example given
below, you do not need any special tuneups whatsoever:
client.Get("http://www.mywebserver.com/");
if (client.StatusCode == 200) {
string response = client.OutputString;
}
You may need to adjust the component settings if you plan to connect to endpoints
secured with TLS. By default, HTTPClient relies on the system settings when
validating server certificates. If you would prefer to ignore the system trust
and implement customized chain validation procedures - such as certificate pinning -
in your code instead, set TLSSettings.AutoValidateCertificates to false, and
subscribe to CertificateValidate event. This event will fire whenever a server
certificate validation needs to be performed.
Use ClientChain collection to provide your certificates for client authentication. Make sure the provided certificate contains a private key; otherwise it will be unable to authenticate.
To provide custom HTTP headers, subscribe to HeadersPrepared event. HTTPClient fires this event right before sending the request out to the server, giving you an opportunity to alter the headers or add your own. The list of headers can be accessed via the RequestHeaders collection. Note: the headers can only be modified from the HeadersPrepared event handler. Setting them earlier or later in your code won't provide the expected effect.
Having set up the component, use the appropriate variant of the request method (such as: Get, GetBytes, or GetFile) to obtain the response in the desired format (string, memory buffer, or file).
Property List
The following is the full list of the properties of the class with short descriptions. Click on the links for further details.
BlockedCertCount | The number of records in the BlockedCert arrays. |
BlockedCertBytes | Returns raw certificate data in DER format. |
BlockedCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
ClientCertCount | The number of records in the ClientCert arrays. |
ClientCertBytes | Returns raw certificate data in DER format. |
ClientCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
ConnInfoAEADCipher | Indicates whether the encryption algorithm used is an AEAD cipher. |
ConnInfoChainValidationDetails | The details of a certificate chain validation outcome. |
ConnInfoChainValidationResult | The outcome of a certificate chain validation routine. |
ConnInfoCiphersuite | The cipher suite employed by this connection. |
ConnInfoClientAuthenticated | Specifies whether client authentication was performed during this connection. |
ConnInfoClientAuthRequested | Specifies whether client authentication was requested during this connection. |
ConnInfoConnectionEstablished | Indicates whether the connection has been established fully. |
ConnInfoConnectionID | The unique identifier assigned to this connection. |
ConnInfoDigestAlgorithm | The digest algorithm used in a TLS-enabled connection. |
ConnInfoEncryptionAlgorithm | The symmetric encryption algorithm used in a TLS-enabled connection. |
ConnInfoExportable | Indicates whether a TLS connection uses a reduced-strength exportable cipher. |
ConnInfoKeyExchangeAlgorithm | The key exchange algorithm used in a TLS-enabled connection. |
ConnInfoKeyExchangeKeyBits | The length of the key exchange key of a TLS-enabled connection. |
ConnInfoNamedECCurve | The elliptic curve used in this connection. |
ConnInfoPFSCipher | Indicates whether the chosen ciphersuite provides perfect forward secrecy (PFS). |
ConnInfoPreSharedIdentityHint | A hint professed by the server to help the client select the PSK identity to use. |
ConnInfoPublicKeyBits | The length of the public key. |
ConnInfoResumedSession | Indicates whether a TLS-enabled connection was spawned from another TLS connection. |
ConnInfoSecureConnection | Indicates whether TLS or SSL is enabled for this connection. |
ConnInfoServerAuthenticated | Indicates whether server authentication was performed during a TLS-enabled connection. |
ConnInfoSignatureAlgorithm | The signature algorithm used in a TLS handshake. |
ConnInfoSymmetricBlockSize | The block size of the symmetric algorithm used. |
ConnInfoSymmetricKeyBits | The key length of the symmetric algorithm used. |
ConnInfoTotalBytesReceived | The total number of bytes received over this connection. |
ConnInfoTotalBytesSent | The total number of bytes sent over this connection. |
ConnInfoValidationLog | Contains the server certificate's chain validation log. |
ConnInfoVersion | Indicates the version of SSL/TLS protocol negotiated during this connection. |
CustomRequest | Specifies a custom request verb. |
DynamicData | Takes a piece of data to be sent to the server within a dynamic POST or PUT request. |
ExternalCryptoAsyncDocumentID | Specifies the document ID for SignAsyncEnd() call Use this property when working with multi-signature DCAuth requests and responses to uniquely identify documents signed within a larger batch. |
ExternalCryptoCustomParams | Custom parameters to be passed to the signing service (uninterpreted). |
ExternalCryptoData | Additional data to be included in the async state and mirrored back by the requestor. |
ExternalCryptoExternalHashCalculation | Specifies whether the message hash is to be calculated at the external endpoint. |
ExternalCryptoHashAlgorithm | Specifies the request's signature hash algorithm. |
ExternalCryptoKeyID | The ID of the pre-shared key used for DC request authentication. |
ExternalCryptoKeySecret | The pre-shared key used for DC request authentication. |
ExternalCryptoMethod | Specifies the asynchronous signing method. |
ExternalCryptoMode | Specifies the external cryptography mode. |
ExternalCryptoPublicKeyAlgorithm | Provide public key algorithm here if the certificate is not available on the pre-signing stage. |
FIPSMode | Reserved. |
KeepAlivePolicy | Defines the keep-alive handling policy. |
KnownCertCount | The number of records in the KnownCert arrays. |
KnownCertBytes | Returns raw certificate data in DER format. |
KnownCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
KnownCRLCount | The number of records in the KnownCRL arrays. |
KnownCRLBytes | Returns raw CRL data in DER format. |
KnownCRLHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
KnownOCSPCount | The number of records in the KnownOCSP arrays. |
KnownOCSPBytes | Buffer containing raw OCSP response data. |
KnownOCSPHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
OutputBytes | Contains the response content. |
OutputString | Contains the response content. |
ProxyAddress | The IP address of the proxy server. |
ProxyAuthentication | The authentication type used by the proxy server. |
ProxyPassword | The password to authenticate to the proxy server. |
ProxyPort | The port on the proxy server to connect to. |
ProxyProxyType | The type of the proxy server. |
ProxyRequestHeaders | Contains HTTP request headers for WebTunnel and HTTP proxy. |
ProxyResponseBody | Contains the HTTP or HTTPS (WebTunnel) proxy response body. |
ProxyResponseHeaders | Contains response headers received from an HTTP or HTTPS (WebTunnel) proxy server. |
ProxyUseIPv6 | Specifies whether IPv6 should be used when connecting through the proxy. |
ProxyUseProxy | Enables or disables proxy-driven connection. |
ProxyUsername | Specifies the username credential for proxy authentication. |
ReasonPhrase | Contains the Reason Phrase element of the server's response. |
ReqHeaderCount | The number of records in the ReqHeader arrays. |
ReqHeaderName | The name element in a (name, value) pair. |
ReqHeaderValue | The value element in a (name, value) pair. |
ReqParamsAccept | Specifies the Accept header property of the HTTP request. |
ReqParamsAcceptCharset | Specifies the Accept-Charset header property of the HTTP request. |
ReqParamsAcceptLanguage | Specifies the Accept-Language header property of the HTTP request. |
ReqParamsAcceptRangeEnd | This property, in combination with AcceptRangeStart, defines the media-range of the HTTP request. |
ReqParamsAcceptRangeStart | This property, in combination with AcceptRangeEnd, defines the media-range of the HTTP request. |
ReqParamsAuthorization | Specifies the Authorization header of the HTTP request. |
ReqParamsConnection | Specifies the value to pass to the Connection header property of HTTP request. |
ReqParamsContentLength | Specifies the size of the entity-body of the HTTP request. |
ReqParamsContentRangeEnd | Specifies the upper bound used in the Content-Range header of the HTTP request. |
ReqParamsContentRangeFullSize | Specifies the total length of the full entity-body of the HTTP request. |
ReqParamsContentRangeStart | Specifies the lower bound used in the Content-Range header of the HTTP request. |
ReqParamsContentType | The Content-Type header property of the HTTP request. |
ReqParamsCookie | This header is expected to be assigned with cookies previously received from the server and stored by the client. |
ReqParamsCustomHeaders | Assign any custom HTTP headers to be passed to the server to this property. |
ReqParamsDate | The date and time of the request. |
ReqParamsFrom | Contains the From header property of the HTTP request. |
ReqParamsHost | This property contains the Host header property of the HTTP request. |
ReqParamsHTTPVersion | Specifies the version of HTTP protocol to use: 1. |
ReqParamsIfMatch | Contains the If-Match request header property. |
ReqParamsIfModifiedSince | Contains the If-Modified-Since request header property. |
ReqParamsIfNoneMatch | Contains the If-None-Match request header property. |
ReqParamsIfUnmodifiedSince | Contains the If-Unmodified-Since request header property. |
ReqParamsPassword | Assign this property with the user's password. |
ReqParamsReferer | The Referer property of the HTTP request header specifies the address of the resource from which the Request-URI was obtained (the referrer). |
ReqParamsUserAgent | The User-Agent property of the HTTP request provides information about the software that initiates the request. |
ReqParamsUsername | Assign this property with the user's login name. |
RespHeaderCount | The number of records in the RespHeader arrays. |
RespHeaderName | The name element in a (name, value) pair. |
RespHeaderValue | The value element in a (name, value) pair. |
RespParamsContentLength | Indicates the length of the response content in bytes. |
RespParamsDate | The date and time at which the response was generated, in server time, in UTC. |
RespParamsReasonPhrase | Contains the reason phrase (a human-readable comment) of the request processing status, which corresponds to, and complements, the staus code. |
RespParamsStatusCode | The server-generated status code of the request processing status. |
ServerCertCount | The number of records in the ServerCert arrays. |
ServerCertBytes | Returns raw certificate data in DER format. |
ServerCertCAKeyID | A unique identifier (fingerprint) of the CA certificate's private key. |
ServerCertFingerprint | Contains the fingerprint (a hash imprint) of this certificate. |
ServerCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
ServerCertIssuer | The common name of the certificate issuer (CA), typically a company name. |
ServerCertIssuerRDN | A collection of information, in the form of [OID, Value] pairs, uniquely identifying the certificate issuer. |
ServerCertKeyAlgorithm | Specifies the public key algorithm of this certificate. |
ServerCertKeyBits | Returns the length of the public key. |
ServerCertKeyFingerprint | Returns a fingerprint of the public key contained in the certificate. |
ServerCertKeyUsage | Indicates the purposes of the key contained in the certificate, in the form of an OR'ed flag set. |
ServerCertPublicKeyBytes | Contains the certificate's public key in DER format. |
ServerCertSelfSigned | Indicates whether the certificate is self-signed (root) or signed by an external CA. |
ServerCertSerialNumber | Returns the certificate's serial number. |
ServerCertSigAlgorithm | Indicates the algorithm that was used by the CA to sign this certificate. |
ServerCertSubject | The common name of the certificate holder, typically an individual's name, a URL, an e-mail address, or a company name. |
ServerCertSubjectKeyID | Contains a unique identifier (fingerprint) of the certificate's private key. |
ServerCertSubjectRDN | A collection of information, in the form of [OID, Value] pairs, uniquely identifying the certificate holder (subject). |
ServerCertValidFrom | The time point at which the certificate becomes valid, in UTC. |
ServerCertValidTo | The time point at which the certificate expires, in UTC. |
SocketDNSMode | Selects the DNS resolver to use: the class's (secure) built-in one, or the one provided by the system. |
SocketDNSPort | Specifies the port number to be used for sending queries to the DNS server. |
SocketDNSQueryTimeout | The timeout (in milliseconds) for each DNS query. |
SocketDNSServers | The addresses of DNS servers to use for address resolution, separated by commas or semicolons. |
SocketDNSTotalTimeout | The timeout (in milliseconds) for the whole resolution process. |
SocketIncomingSpeedLimit | The maximum number of bytes to read from the socket, per second. |
SocketLocalAddress | The local network interface to bind the socket to. |
SocketLocalPort | The local port number to bind the socket to. |
SocketOutgoingSpeedLimit | The maximum number of bytes to write to the socket, per second. |
SocketTimeout | The maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful. |
SocketUseIPv6 | Enables or disables IP protocol version 6. |
StatusCode | Contains the Status Code element of the server's response. |
TLSAutoValidateCertificates | Specifies whether server-side TLS certificates should be validated automatically using internal validation rules. |
TLSBaseConfiguration | Selects the base configuration for the TLS settings. |
TLSCiphersuites | A list of ciphersuites separated with commas or semicolons. |
TLSECCurves | Defines the elliptic curves to enable. |
TLSExtensions | Provides access to TLS extensions. |
TLSForceResumeIfDestinationChanges | Whether to force TLS session resumption when the destination address changes. |
TLSPreSharedIdentity | Defines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated. |
TLSPreSharedKey | Contains the pre-shared for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16. |
TLSPreSharedKeyCiphersuite | Defines the ciphersuite used for PSK (Pre-Shared Key) negotiation. |
TLSRenegotiationAttackPreventionMode | Selects renegotiation attack prevention mechanism. |
TLSRevocationCheck | Specifies the kind(s) of revocation check to perform. |
TLSSSLOptions | Various SSL (TLS) protocol options, set of cssloExpectShutdownMessage 0x001 Wait for the close-notify message when shutting down the connection cssloOpenSSLDTLSWorkaround 0x002 (DEPRECATED) Use a DTLS version workaround when talking to very old OpenSSL versions cssloDisableKexLengthAlignment 0x004 Do not align the client-side PMS by the RSA modulus size. |
TLSTLSMode | Specifies the TLS mode to use. |
TLSUseExtendedMasterSecret | Enables Extended Master Secret Extension, as defined in RFC 7627. |
TLSUseSessionResumption | Enables or disables TLS session resumption capability. |
TLSVersions | Th SSL/TLS versions to enable by default. |
TrustedCertCount | The number of records in the TrustedCert arrays. |
TrustedCertBytes | Returns raw certificate data in DER format. |
TrustedCertHandle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
UseDigestAuth | Enables or disables the HTTP Digest authentication. |
UseKerberosAuth | TBD. |
UseNTLMAuth | Enables or disables NTLM authentication. |
Method List
The following is the full list of the methods of the class with short descriptions. Click on the links for further details.
Config | Sets or retrieves a configuration setting. |
Delete | Sends a DELETE request to the server. |
DoAction | Performs an additional action. |
Get | Sends a GET request to the server. |
GetBytes | Sends a GET request to the server and returns the output. |
GetFile | Sends a GET request to the server and saves the output to a file. |
Head | Sends a HEAD request to the server. |
Options | Sends an OPTIONS request to the server. |
Post | Sends a POST request to the server. |
PostBytes | Sends a POST request to the server. |
PostFile | Sends a file to the server using a POST request. |
PostWebForm | Posts a web form data to the server. |
Put | Sends a PUT request to the server. |
PutBytes | Sends a PUT request to the server. |
PutFile | Sends a file to the server using a PUT request. |
Trace | Sends a TRACE request to the server. |
Event List
The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.
CertificateValidate | Fires when the server's TLS certificate has to be validated. |
Cookie | Fired to report a received cookie. |
DocumentBegin | Marks the start of the incoming HTML document or file. |
DocumentEnd | Marks the successful receipt of the incoming HTML document or file. |
DynamicDataNeeded | Requests a portion of data to be uploaded from the application. |
Error | Information about errors during data delivery. |
ExternalSign | Handles remote or external signing initiated by the SignExternal method or other source. |
HeadersPrepared | Fires when the request headers have been formed and are about to be sent to the server. |
HeadersReceived | Fires when the HTTP response headers have just been received from the server. |
Notification | This event notifies the application about an underlying control flow event. |
Progress | Fires periodically during the data transfer. |
Redirection | Fires when the server suggests a redirect. |
TLSEstablished | TBD. |
TLSHandshake | TBD. |
TLSPSK | TBD. |
TLSShutdown | TBD. |
Configuration Settings
The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.
CacheStreamOutput | Tells the class whether to cache stream- and file-bound responses in the class. |
ForceNTLMAuth | Activates and enforces NTLM authentication. |
IgnoreSystemTrust | Whether trusted Windows Certificate Stores should be treated as trusted. |
IgnoreUnknownTransferEncodings | All incoming responses with unknown transfer encodings are ignored if this property is true. |
MaxRedirections | The maximum number of HTTP redirects. |
PersistentAuthHeader | Whether to resend NTLM negotiation on every request. |
RequestCompressionGZip | Ask server to use GZip compression. |
RequestCompressionLevel | Ask server to use the specified compression level. |
SendBufferSize | Size of send buffer in bytes. |
SuppressRedirectionContent | Whether to suppress the redirection content. |
TempPath | Path for storing temporary files. |
TolerateMinorChainIssues | Whether to tolerate minor chain issues. |
Use100Continue | Whether to use 100-continue for POST and PUT commands. |
UseCompression | Whether to use GZip compression. |
UseMicrosoftCTL | Enables or disables automatic use of Microsoft online certificate trust list. |
UseSystemCertificates | Enables or disables the use of the system certificates. |
CheckKeyIntegrityBeforeUse | Enables or disable private key integrity check before use. |
CookieCaching | Specifies whether a cookie cache should be used for HTTP(S) transports. |
Cookies | Gets or sets local cookies for the class (supported for HTTPClient, RESTClient and SOAPClient only). |
DefDeriveKeyIterations | Specifies the default key derivation algorithm iteration count. |
EnableClientSideSSLFFDHE | Enables or disables finite field DHE key exchange support in TLS clients. |
GlobalCookies | Gets or sets global cookies for all the HTTP transports. |
HttpUserAgent | Specifies the user agent name to be used by all HTTP clients. |
LogDestination | Specifies the debug log destination. |
LogDetails | Specifies the debug log details to dump. |
LogFile | Specifies the debug log filename. |
LogFilters | Specifies the debug log filters. |
LogFlushMode | Specifies the log flush mode. |
LogLevel | Specifies the debug log level. |
LogMaxEventCount | Specifies the maximum number of events to cache before further action is taken. |
LogRotationMode | Specifies the log rotation mode. |
MaxASN1BufferLength | Specifies the maximal allowed length for ASN.1 primitive tag data. |
MaxASN1TreeDepth | Specifies the maximal depth for processed ASN.1 trees. |
OCSPHashAlgorithm | Specifies the hash algorithm to be used to identify certificates in OCSP requests. |
Tag | Allows to store any custom data. |
UseSharedSystemStorages | Specifies whether the validation engine should use a global per-process copy of the system certificate stores. |
UseSystemOAEPAndPSS | Enforces or disables the use of system-driven RSA OAEP and PSS computations. |
UseSystemRandom | Enables or disables the use of the OS PRNG. |
BlockedCertCount Property (HTTPClient Class)
The number of records in the BlockedCert arrays.
Syntax
int GetBlockedCertCount();
int SetBlockedCertCount(int iBlockedCertCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at BlockedCertCount - 1.This property is not available at design time.
Data Type
Integer
BlockedCertBytes Property (HTTPClient Class)
Returns raw certificate data in DER format.
Syntax
QByteArray GetBlockedCertBytes(int iBlockedCertIndex);
Remarks
Returns raw certificate data in DER format.
The BlockedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the BlockedCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
BlockedCertHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetBlockedCertHandle(int iBlockedCertIndex);
int SetBlockedCertHandle(int iBlockedCertIndex, qint64 lBlockedCertHandle);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The BlockedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the BlockedCertCount property.
This property is not available at design time.
Data Type
Long64
ClientCertCount Property (HTTPClient Class)
The number of records in the ClientCert arrays.
Syntax
int GetClientCertCount();
int SetClientCertCount(int iClientCertCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at ClientCertCount - 1.This property is not available at design time.
Data Type
Integer
ClientCertBytes Property (HTTPClient Class)
Returns raw certificate data in DER format.
Syntax
QByteArray GetClientCertBytes(int iClientCertIndex);
Remarks
Returns raw certificate data in DER format.
The ClientCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ClientCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ClientCertHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetClientCertHandle(int iClientCertIndex);
int SetClientCertHandle(int iClientCertIndex, qint64 lClientCertHandle);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The ClientCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ClientCertCount property.
This property is not available at design time.
Data Type
Long64
ConnInfoAEADCipher Property (HTTPClient Class)
Indicates whether the encryption algorithm used is an AEAD cipher.
Syntax
bool GetConnInfoAEADCipher();
Default Value
false
Remarks
Indicates whether the encryption algorithm used is an AEAD cipher.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoChainValidationDetails Property (HTTPClient Class)
The details of a certificate chain validation outcome.
Syntax
int GetConnInfoChainValidationDetails();
Default Value
0
Remarks
The details of a certificate chain validation outcome. They may often suggest what reasons that contributed to the overall validation result.
Returns a bit mask of the following options:
cvrBadData | 0x0001 | One or more certificates in the validation path are malformed |
cvrRevoked | 0x0002 | One or more certificates are revoked |
cvrNotYetValid | 0x0004 | One or more certificates are not yet valid |
cvrExpired | 0x0008 | One or more certificates are expired |
cvrInvalidSignature | 0x0010 | A certificate contains a non-valid digital signature |
cvrUnknownCA | 0x0020 | A CA certificate for one or more certificates has not been found (chain incomplete) |
cvrCAUnauthorized | 0x0040 | One of the CA certificates are not authorized to act as CA |
cvrCRLNotVerified | 0x0080 | One or more CRLs could not be verified |
cvrOCSPNotVerified | 0x0100 | One or more OCSP responses could not be verified |
cvrIdentityMismatch | 0x0200 | The identity protected by the certificate (a TLS endpoint or an e-mail addressee) does not match what is recorded in the certificate |
cvrNoKeyUsage | 0x0400 | A mandatory key usage is not enabled in one of the chain certificates |
cvrBlocked | 0x0800 | One or more certificates are blocked |
cvrFailure | 0x1000 | General validation failure |
cvrChainLoop | 0x2000 | Chain loop: one of the CA certificates recursively signs itself |
cvrWeakAlgorithm | 0x4000 | A weak algorithm is used in one of certificates or revocation elements |
cvrUserEnforced | 0x8000 | The chain was considered invalid following intervention from a user code |
This property is read-only and not available at design time.
Data Type
Integer
ConnInfoChainValidationResult Property (HTTPClient Class)
The outcome of a certificate chain validation routine.
Syntax
int GetConnInfoChainValidationResult();
Possible Values
CVT_VALID(0),
CVT_VALID_BUT_UNTRUSTED(1),
CVT_INVALID(2),
CVT_CANT_BE_ESTABLISHED(3)
Default Value
0
Remarks
The outcome of a certificate chain validation routine.
Available options:
cvtValid | 0 | The chain is valid |
cvtValidButUntrusted | 1 | The chain is valid, but the root certificate is not trusted |
cvtInvalid | 2 | The chain is not valid (some of certificates are revoked, expired, or contain an invalid signature) |
cvtCantBeEstablished | 3 | The validity of the chain cannot be established because of missing or unavailable validation information (certificates, CRLs, or OCSP responses) |
Use the ValidationLog property to access the detailed validation log.
This property is read-only and not available at design time.
Data Type
Integer
ConnInfoCiphersuite Property (HTTPClient Class)
The cipher suite employed by this connection.
Syntax
QString GetConnInfoCiphersuite();
Default Value
""
Remarks
The cipher suite employed by this connection.
For TLS connections, this property returns the ciphersuite that was/is employed by the connection.
This property is read-only and not available at design time.
Data Type
String
ConnInfoClientAuthenticated Property (HTTPClient Class)
Specifies whether client authentication was performed during this connection.
Syntax
bool GetConnInfoClientAuthenticated();
Default Value
false
Remarks
Specifies whether client authentication was performed during this connection.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoClientAuthRequested Property (HTTPClient Class)
Specifies whether client authentication was requested during this connection.
Syntax
bool GetConnInfoClientAuthRequested();
Default Value
false
Remarks
Specifies whether client authentication was requested during this connection.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoConnectionEstablished Property (HTTPClient Class)
Indicates whether the connection has been established fully.
Syntax
bool GetConnInfoConnectionEstablished();
Default Value
false
Remarks
Indicates whether the connection has been established fully.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoConnectionID Property (HTTPClient Class)
The unique identifier assigned to this connection.
Syntax
QByteArray GetConnInfoConnectionID();
Remarks
The unique identifier assigned to this connection.
This property is read-only and not available at design time.
Data Type
Byte Array
ConnInfoDigestAlgorithm Property (HTTPClient Class)
The digest algorithm used in a TLS-enabled connection.
Syntax
QString GetConnInfoDigestAlgorithm();
Default Value
""
Remarks
The digest algorithm used in a TLS-enabled connection.
This property is read-only and not available at design time.
Data Type
String
ConnInfoEncryptionAlgorithm Property (HTTPClient Class)
The symmetric encryption algorithm used in a TLS-enabled connection.
Syntax
QString GetConnInfoEncryptionAlgorithm();
Default Value
""
Remarks
The symmetric encryption algorithm used in a TLS-enabled connection.
This property is read-only and not available at design time.
Data Type
String
ConnInfoExportable Property (HTTPClient Class)
Indicates whether a TLS connection uses a reduced-strength exportable cipher.
Syntax
bool GetConnInfoExportable();
Default Value
false
Remarks
Indicates whether a TLS connection uses a reduced-strength exportable cipher.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoKeyExchangeAlgorithm Property (HTTPClient Class)
The key exchange algorithm used in a TLS-enabled connection.
Syntax
QString GetConnInfoKeyExchangeAlgorithm();
Default Value
""
Remarks
The key exchange algorithm used in a TLS-enabled connection.
This property is read-only and not available at design time.
Data Type
String
ConnInfoKeyExchangeKeyBits Property (HTTPClient Class)
The length of the key exchange key of a TLS-enabled connection.
Syntax
int GetConnInfoKeyExchangeKeyBits();
Default Value
0
Remarks
The length of the key exchange key of a TLS-enabled connection.
This property is read-only and not available at design time.
Data Type
Integer
ConnInfoNamedECCurve Property (HTTPClient Class)
The elliptic curve used in this connection.
Syntax
QString GetConnInfoNamedECCurve();
Default Value
""
Remarks
The elliptic curve used in this connection.
This property is read-only and not available at design time.
Data Type
String
ConnInfoPFSCipher Property (HTTPClient Class)
Indicates whether the chosen ciphersuite provides perfect forward secrecy (PFS).
Syntax
bool GetConnInfoPFSCipher();
Default Value
false
Remarks
Indicates whether the chosen ciphersuite provides perfect forward secrecy (PFS).
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoPreSharedIdentityHint Property (HTTPClient Class)
A hint professed by the server to help the client select the PSK identity to use.
Syntax
QString GetConnInfoPreSharedIdentityHint();
Default Value
""
Remarks
A hint professed by the server to help the client select the PSK identity to use.
This property is read-only and not available at design time.
Data Type
String
ConnInfoPublicKeyBits Property (HTTPClient Class)
The length of the public key.
Syntax
int GetConnInfoPublicKeyBits();
Default Value
0
Remarks
The length of the public key.
This property is read-only and not available at design time.
Data Type
Integer
ConnInfoResumedSession Property (HTTPClient Class)
Indicates whether a TLS-enabled connection was spawned from another TLS connection.
Syntax
bool GetConnInfoResumedSession();
Default Value
false
Remarks
Indicates whether a TLS-enabled connection was spawned from another TLS connection
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoSecureConnection Property (HTTPClient Class)
Indicates whether TLS or SSL is enabled for this connection.
Syntax
bool GetConnInfoSecureConnection();
Default Value
false
Remarks
Indicates whether TLS or SSL is enabled for this connection.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoServerAuthenticated Property (HTTPClient Class)
Indicates whether server authentication was performed during a TLS-enabled connection.
Syntax
bool GetConnInfoServerAuthenticated();
Default Value
false
Remarks
Indicates whether server authentication was performed during a TLS-enabled connection.
This property is read-only and not available at design time.
Data Type
Boolean
ConnInfoSignatureAlgorithm Property (HTTPClient Class)
The signature algorithm used in a TLS handshake.
Syntax
QString GetConnInfoSignatureAlgorithm();
Default Value
""
Remarks
The signature algorithm used in a TLS handshake.
This property is read-only and not available at design time.
Data Type
String
ConnInfoSymmetricBlockSize Property (HTTPClient Class)
The block size of the symmetric algorithm used.
Syntax
int GetConnInfoSymmetricBlockSize();
Default Value
0
Remarks
The block size of the symmetric algorithm used.
This property is read-only and not available at design time.
Data Type
Integer
ConnInfoSymmetricKeyBits Property (HTTPClient Class)
The key length of the symmetric algorithm used.
Syntax
int GetConnInfoSymmetricKeyBits();
Default Value
0
Remarks
The key length of the symmetric algorithm used.
This property is read-only and not available at design time.
Data Type
Integer
ConnInfoTotalBytesReceived Property (HTTPClient Class)
The total number of bytes received over this connection.
Syntax
qint64 GetConnInfoTotalBytesReceived();
Default Value
0
Remarks
The total number of bytes received over this connection.
This property is read-only and not available at design time.
Data Type
Long64
ConnInfoTotalBytesSent Property (HTTPClient Class)
The total number of bytes sent over this connection.
Syntax
qint64 GetConnInfoTotalBytesSent();
Default Value
0
Remarks
The total number of bytes sent over this connection.
This property is read-only and not available at design time.
Data Type
Long64
ConnInfoValidationLog Property (HTTPClient Class)
Contains the server certificate's chain validation log.
Syntax
QString GetConnInfoValidationLog();
Default Value
""
Remarks
Contains the server certificate's chain validation log. This information may be very useful in investigating chain validation failures.
This property is read-only and not available at design time.
Data Type
String
ConnInfoVersion Property (HTTPClient Class)
Indicates the version of SSL/TLS protocol negotiated during this connection.
Syntax
QString GetConnInfoVersion();
Default Value
""
Remarks
Indicates the version of SSL/TLS protocol negotiated during this connection.
This property is read-only and not available at design time.
Data Type
String
CustomRequest Property (HTTPClient Class)
Specifies a custom request verb.
Syntax
QString GetCustomRequest();
int SetCustomRequest(QString qsCustomRequest);
Default Value
""
Remarks
Use this property to specify a custom HTTP method verb to use instead of the original method. PATCH is one of the commonly used custom verbs.
This property is not available at design time.
Data Type
String
DynamicData Property (HTTPClient Class)
Takes a piece of data to be sent to the server within a dynamic POST or PUT request.
Syntax
QByteArray GetDynamicData();
int SetDynamicData(QByteArray qbaDynamicData);
Remarks
Assign the next chunk of data to this property from your DynamicDataNeeded event handler to pass it to the server. Leave it empty to tell the component that no more data is available.
This property is not available at design time.
Data Type
Byte Array
ExternalCryptoAsyncDocumentID Property (HTTPClient Class)
Specifies the document ID for SignAsyncEnd() call Use this property when working with multi-signature DCAuth requests and responses to uniquely identify documents signed within a larger batch.
Syntax
QString GetExternalCryptoAsyncDocumentID();
int SetExternalCryptoAsyncDocumentID(QString qsExternalCryptoAsyncDocumentID);
Default Value
""
Remarks
Specifies the document ID for SignAsyncEnd() call
Use this property when working with multi-signature DCAuth requests and responses to uniquely identify documents signed within a larger batch. This value helps ASiCSigner identify the correct signature in the returned batch of responses. If using batched requests, make sure to set this property to the same value on both pre-signing (SignAsyncBegin) and completion (SignAsyncEnd) stages.
Data Type
String
ExternalCryptoCustomParams Property (HTTPClient Class)
Custom parameters to be passed to the signing service (uninterpreted).
Syntax
QString GetExternalCryptoCustomParams();
int SetExternalCryptoCustomParams(QString qsExternalCryptoCustomParams);
Default Value
""
Remarks
Custom parameters to be passed to the signing service (uninterpreted).
This property is not available at design time.
Data Type
String
ExternalCryptoData Property (HTTPClient Class)
Additional data to be included in the async state and mirrored back by the requestor.
Syntax
QString GetExternalCryptoData();
int SetExternalCryptoData(QString qsExternalCryptoData);
Default Value
""
Remarks
Additional data to be included in the async state and mirrored back by the requestor
This property is not available at design time.
Data Type
String
ExternalCryptoExternalHashCalculation Property (HTTPClient Class)
Specifies whether the message hash is to be calculated at the external endpoint.
Syntax
bool GetExternalCryptoExternalHashCalculation();
int SetExternalCryptoExternalHashCalculation(bool bExternalCryptoExternalHashCalculation);
Default Value
false
Remarks
Specifies whether the message hash is to be calculated at the external endpoint. Please note that this mode is not supported by all components. In particular, components operating with larger objects (PDFSigner, CAdESSigner, XAdESSigner) do not support it.
Data Type
Boolean
ExternalCryptoHashAlgorithm Property (HTTPClient Class)
Specifies the request's signature hash algorithm.
Syntax
QString GetExternalCryptoHashAlgorithm();
int SetExternalCryptoHashAlgorithm(QString qsExternalCryptoHashAlgorithm);
Default Value
"SHA256"
Remarks
Specifies the request's signature hash algorithm.
SB_HASH_ALGORITHM_SHA1 | SHA1 | |
SB_HASH_ALGORITHM_SHA224 | SHA224 | |
SB_HASH_ALGORITHM_SHA256 | SHA256 | |
SB_HASH_ALGORITHM_SHA384 | SHA384 | |
SB_HASH_ALGORITHM_SHA512 | SHA512 | |
SB_HASH_ALGORITHM_MD2 | MD2 | |
SB_HASH_ALGORITHM_MD4 | MD4 | |
SB_HASH_ALGORITHM_MD5 | MD5 | |
SB_HASH_ALGORITHM_RIPEMD160 | RIPEMD160 | |
SB_HASH_ALGORITHM_CRC32 | CRC32 | |
SB_HASH_ALGORITHM_SSL3 | SSL3 | |
SB_HASH_ALGORITHM_GOST_R3411_1994 | GOST1994 | |
SB_HASH_ALGORITHM_WHIRLPOOL | WHIRLPOOL | |
SB_HASH_ALGORITHM_POLY1305 | POLY1305 | |
SB_HASH_ALGORITHM_SHA3_224 | SHA3_224 | |
SB_HASH_ALGORITHM_SHA3_256 | SHA3_256 | |
SB_HASH_ALGORITHM_SHA3_384 | SHA3_384 | |
SB_HASH_ALGORITHM_SHA3_512 | SHA3_512 | |
SB_HASH_ALGORITHM_BLAKE2S_128 | BLAKE2S_128 | |
SB_HASH_ALGORITHM_BLAKE2S_160 | BLAKE2S_160 | |
SB_HASH_ALGORITHM_BLAKE2S_224 | BLAKE2S_224 | |
SB_HASH_ALGORITHM_BLAKE2S_256 | BLAKE2S_256 | |
SB_HASH_ALGORITHM_BLAKE2B_160 | BLAKE2B_160 | |
SB_HASH_ALGORITHM_BLAKE2B_256 | BLAKE2B_256 | |
SB_HASH_ALGORITHM_BLAKE2B_384 | BLAKE2B_384 | |
SB_HASH_ALGORITHM_BLAKE2B_512 | BLAKE2B_512 | |
SB_HASH_ALGORITHM_SHAKE_128 | SHAKE_128 | |
SB_HASH_ALGORITHM_SHAKE_256 | SHAKE_256 | |
SB_HASH_ALGORITHM_SHAKE_128_LEN | SHAKE_128_LEN | |
SB_HASH_ALGORITHM_SHAKE_256_LEN | SHAKE_256_LEN |
Data Type
String
ExternalCryptoKeyID Property (HTTPClient Class)
The ID of the pre-shared key used for DC request authentication.
Syntax
QString GetExternalCryptoKeyID();
int SetExternalCryptoKeyID(QString qsExternalCryptoKeyID);
Default Value
""
Remarks
The ID of the pre-shared key used for DC request authentication.
Asynchronous DCAuth-driven communication requires that parties authenticate each other with a secret pre-shared cryptographic key. This provides extra protection layer for the protocol and diminishes the risk of private key becoming abused by foreign parties. Use this property to provide the pre-shared key identifier, and use ExternalCryptoKeySecret to pass the key itself.
The same KeyID/KeySecret pair should be used on the DCAuth side for the signing requests to be accepted.
Note: The KeyID/KeySecret scheme is very similar to the AuthKey scheme used in various Cloud service providers to authenticate users.
Example:
signer.ExternalCrypto.KeyID = "MainSigningKey";
signer.ExternalCrypto.KeySecret = "abcdef0123456789";
Data Type
String
ExternalCryptoKeySecret Property (HTTPClient Class)
The pre-shared key used for DC request authentication.
Syntax
QString GetExternalCryptoKeySecret();
int SetExternalCryptoKeySecret(QString qsExternalCryptoKeySecret);
Default Value
""
Remarks
The pre-shared key used for DC request authentication. This key must be set and match the key used by the DCAuth counterpart for the scheme to work.
Read more about configuring authentication in the ExternalCryptoKeyID topic.
Data Type
String
ExternalCryptoMethod Property (HTTPClient Class)
Specifies the asynchronous signing method.
Syntax
int GetExternalCryptoMethod();
int SetExternalCryptoMethod(int iExternalCryptoMethod);
Possible Values
ASMD_PKCS1(0),
ASMD_PKCS7(1)
Default Value
0
Remarks
Specifies the asynchronous signing method. This is typically defined by the DC server capabilities and setup.
Available options:
asmdPKCS1 | 0 |
asmdPKCS7 | 1 |
Data Type
Integer
ExternalCryptoMode Property (HTTPClient Class)
Specifies the external cryptography mode.
Syntax
int GetExternalCryptoMode();
int SetExternalCryptoMode(int iExternalCryptoMode);
Possible Values
ECM_DEFAULT(0),
ECM_DISABLED(1),
ECM_GENERIC(2),
ECM_DCAUTH(3),
ECM_DCAUTH_JSON(4)
Default Value
0
Remarks
Specifies the external cryptography mode.
Available options:
ecmDefault | The default value (0) |
ecmDisabled | Do not use DC or external signing (1) |
ecmGeneric | Generic external signing with OnExternalSign event (2) |
ecmDCAuth | DCAuth signing (3) |
ecmDCAuthJSON | DCAuth signing in JSON format (4) |
This property is not available at design time.
Data Type
Integer
ExternalCryptoPublicKeyAlgorithm Property (HTTPClient Class)
Provide public key algorithm here if the certificate is not available on the pre-signing stage.
Syntax
QString GetExternalCryptoPublicKeyAlgorithm();
int SetExternalCryptoPublicKeyAlgorithm(QString qsExternalCryptoPublicKeyAlgorithm);
Default Value
""
Remarks
Provide public key algorithm here if the certificate is not available on the pre-signing stage.
SB_CERT_ALGORITHM_ID_RSA_ENCRYPTION | rsaEncryption | |
SB_CERT_ALGORITHM_MD2_RSA_ENCRYPTION | md2withRSAEncryption | |
SB_CERT_ALGORITHM_MD5_RSA_ENCRYPTION | md5withRSAEncryption | |
SB_CERT_ALGORITHM_SHA1_RSA_ENCRYPTION | sha1withRSAEncryption | |
SB_CERT_ALGORITHM_ID_DSA | id-dsa | |
SB_CERT_ALGORITHM_ID_DSA_SHA1 | id-dsa-with-sha1 | |
SB_CERT_ALGORITHM_DH_PUBLIC | dhpublicnumber | |
SB_CERT_ALGORITHM_SHA224_RSA_ENCRYPTION | sha224WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA256_RSA_ENCRYPTION | sha256WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA384_RSA_ENCRYPTION | sha384WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA512_RSA_ENCRYPTION | sha512WithRSAEncryption | |
SB_CERT_ALGORITHM_ID_RSAPSS | id-RSASSA-PSS | |
SB_CERT_ALGORITHM_ID_RSAOAEP | id-RSAES-OAEP | |
SB_CERT_ALGORITHM_RSASIGNATURE_RIPEMD160 | ripemd160withRSA | |
SB_CERT_ALGORITHM_ID_ELGAMAL | elGamal | |
SB_CERT_ALGORITHM_SHA1_ECDSA | ecdsa-with-SHA1 | |
SB_CERT_ALGORITHM_RECOMMENDED_ECDSA | ecdsa-recommended | |
SB_CERT_ALGORITHM_SHA224_ECDSA | ecdsa-with-SHA224 | |
SB_CERT_ALGORITHM_SHA256_ECDSA | ecdsa-with-SHA256 | |
SB_CERT_ALGORITHM_SHA384_ECDSA | ecdsa-with-SHA384 | |
SB_CERT_ALGORITHM_SHA512_ECDSA | ecdsa-with-SHA512 | |
SB_CERT_ALGORITHM_EC | id-ecPublicKey | |
SB_CERT_ALGORITHM_SPECIFIED_ECDSA | ecdsa-specified | |
SB_CERT_ALGORITHM_GOST_R3410_1994 | id-GostR3410-94 | |
SB_CERT_ALGORITHM_GOST_R3410_2001 | id-GostR3410-2001 | |
SB_CERT_ALGORITHM_GOST_R3411_WITH_R3410_1994 | id-GostR3411-94-with-GostR3410-94 | |
SB_CERT_ALGORITHM_GOST_R3411_WITH_R3410_2001 | id-GostR3411-94-with-GostR3410-2001 | |
SB_CERT_ALGORITHM_SHA1_ECDSA_PLAIN | ecdsa-plain-SHA1 | |
SB_CERT_ALGORITHM_SHA224_ECDSA_PLAIN | ecdsa-plain-SHA224 | |
SB_CERT_ALGORITHM_SHA256_ECDSA_PLAIN | ecdsa-plain-SHA256 | |
SB_CERT_ALGORITHM_SHA384_ECDSA_PLAIN | ecdsa-plain-SHA384 | |
SB_CERT_ALGORITHM_SHA512_ECDSA_PLAIN | ecdsa-plain-SHA512 | |
SB_CERT_ALGORITHM_RIPEMD160_ECDSA_PLAIN | ecdsa-plain-RIPEMD160 | |
SB_CERT_ALGORITHM_WHIRLPOOL_RSA_ENCRYPTION | whirlpoolWithRSAEncryption | |
SB_CERT_ALGORITHM_ID_DSA_SHA224 | id-dsa-with-sha224 | |
SB_CERT_ALGORITHM_ID_DSA_SHA256 | id-dsa-with-sha256 | |
SB_CERT_ALGORITHM_SHA3_224_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-512 | |
SB_CERT_ALGORITHM_SHA3_224_ECDSA | id-ecdsa-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_ECDSA | id-ecdsa-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_ECDSA | id-ecdsa-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_ECDSA | id-ecdsa-with-sha3-512 | |
SB_CERT_ALGORITHM_SHA3_224_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-512 | |
SB_CERT_ALGORITHM_ID_DSA_SHA3_224 | id-dsa-with-sha3-224 | |
SB_CERT_ALGORITHM_ID_DSA_SHA3_256 | id-dsa-with-sha3-256 | |
SB_CERT_ALGORITHM_BLAKE2S_128_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b512 | |
SB_CERT_ALGORITHM_BLAKE2S_128_ECDSA | id-ecdsa-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_ECDSA | id-ecdsa-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_ECDSA | id-ecdsa-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_ECDSA | id-ecdsa-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_ECDSA | id-ecdsa-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_ECDSA | id-ecdsa-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_ECDSA | id-ecdsa-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_ECDSA | id-ecdsa-with-blake2b512 | |
SB_CERT_ALGORITHM_BLAKE2S_128_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b512 | |
SB_CERT_ALGORITHM_ID_DSA_BLAKE2S_224 | id-dsa-with-blake2s224 | |
SB_CERT_ALGORITHM_ID_DSA_BLAKE2S_256 | id-dsa-with-blake2s256 | |
SB_CERT_ALGORITHM_EDDSA_ED25519 | id-Ed25519 | |
SB_CERT_ALGORITHM_EDDSA_ED448 | id-Ed448 | |
SB_CERT_ALGORITHM_EDDSA_ED25519_PH | id-Ed25519ph | |
SB_CERT_ALGORITHM_EDDSA_ED448_PH | id-Ed448ph | |
SB_CERT_ALGORITHM_EDDSA | id-EdDSA | |
SB_CERT_ALGORITHM_EDDSA_SIGNATURE | id-EdDSA-sig |
Data Type
String
FIPSMode Property (HTTPClient Class)
Reserved.
Syntax
bool GetFIPSMode();
int SetFIPSMode(bool bFIPSMode);
Default Value
false
Remarks
This property is reserved for future use.
Data Type
Boolean
KeepAlivePolicy Property (HTTPClient Class)
Defines the keep-alive handling policy.
Syntax
int GetKeepAlivePolicy();
int SetKeepAlivePolicy(int iKeepAlivePolicy);
Possible Values
CKAP_STANDARD_DEFINED(0),
CKAP_PREFER_KEEP_ALIVE(1),
CKAP_RELY_ON_SERVER(2),
CKAP_KEEP_ALIVES_DISABLED(3)
Default Value
0
Remarks
Use this property to tune-up the keep-alive mechanism as per the needs of your application.
ckapStandardDefined | 0 | Follow the standard |
ckapPreferKeepAlive | 1 | Always request a keep-alive connection |
ckapRelyOnServer | 2 | Not include the "Connection" header, allowing the server to choose the keep-alive mode |
ckapKeepAlivesDisabled | 3 | Disable keep-alives by including the "Connection: Close" header |
Data Type
Integer
KnownCertCount Property (HTTPClient Class)
The number of records in the KnownCert arrays.
Syntax
int GetKnownCertCount();
int SetKnownCertCount(int iKnownCertCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at KnownCertCount - 1.This property is not available at design time.
Data Type
Integer
KnownCertBytes Property (HTTPClient Class)
Returns raw certificate data in DER format.
Syntax
QByteArray GetKnownCertBytes(int iKnownCertIndex);
Remarks
Returns raw certificate data in DER format.
The KnownCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KnownCertHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetKnownCertHandle(int iKnownCertIndex);
int SetKnownCertHandle(int iKnownCertIndex, qint64 lKnownCertHandle);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The KnownCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCertCount property.
This property is not available at design time.
Data Type
Long64
KnownCRLCount Property (HTTPClient Class)
The number of records in the KnownCRL arrays.
Syntax
int GetKnownCRLCount();
int SetKnownCRLCount(int iKnownCRLCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at KnownCRLCount - 1.This property is not available at design time.
Data Type
Integer
KnownCRLBytes Property (HTTPClient Class)
Returns raw CRL data in DER format.
Syntax
QByteArray GetKnownCRLBytes(int iKnownCRLIndex);
Remarks
Returns raw CRL data in DER format.
The KnownCRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCRLCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KnownCRLHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetKnownCRLHandle(int iKnownCRLIndex);
int SetKnownCRLHandle(int iKnownCRLIndex, qint64 lKnownCRLHandle);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The KnownCRLIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownCRLCount property.
This property is not available at design time.
Data Type
Long64
KnownOCSPCount Property (HTTPClient Class)
The number of records in the KnownOCSP arrays.
Syntax
int GetKnownOCSPCount();
int SetKnownOCSPCount(int iKnownOCSPCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at KnownOCSPCount - 1.This property is not available at design time.
Data Type
Integer
KnownOCSPBytes Property (HTTPClient Class)
Buffer containing raw OCSP response data.
Syntax
QByteArray GetKnownOCSPBytes(int iKnownOCSPIndex);
Remarks
Buffer containing raw OCSP response data.
The KnownOCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownOCSPCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
KnownOCSPHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetKnownOCSPHandle(int iKnownOCSPIndex);
int SetKnownOCSPHandle(int iKnownOCSPIndex, qint64 lKnownOCSPHandle);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The KnownOCSPIndex parameter specifies the index of the item in the array. The size of the array is controlled by the KnownOCSPCount property.
This property is not available at design time.
Data Type
Long64
OutputBytes Property (HTTPClient Class)
Contains the response content.
Syntax
QByteArray GetOutputBytes();
Remarks
Use this property to access the content received from the server in response to a prior request.
This property is read-only and not available at design time.
Data Type
Byte Array
OutputString Property (HTTPClient Class)
Contains the response content.
Syntax
QString GetOutputString();
Default Value
""
Remarks
Use this property to access the content received from the server in response to a prior request, as a string.
This property is read-only and not available at design time.
Data Type
String
ProxyAddress Property (HTTPClient Class)
The IP address of the proxy server.
Syntax
QString GetProxyAddress();
int SetProxyAddress(QString qsProxyAddress);
Default Value
""
Remarks
The IP address of the proxy server.
Data Type
String
ProxyAuthentication Property (HTTPClient Class)
The authentication type used by the proxy server.
Syntax
int GetProxyAuthentication();
int SetProxyAuthentication(int iProxyAuthentication);
Possible Values
PAT_NO_AUTHENTICATION(0),
PAT_BASIC(1),
PAT_DIGEST(2),
PAT_NTLM(3)
Default Value
0
Remarks
The authentication type used by the proxy server.
patNoAuthentication | 0 |
patBasic | 1 |
patDigest | 2 |
patNTLM | 3 |
Data Type
Integer
ProxyPassword Property (HTTPClient Class)
The password to authenticate to the proxy server.
Syntax
QString GetProxyPassword();
int SetProxyPassword(QString qsProxyPassword);
Default Value
""
Remarks
The password to authenticate to the proxy server.
Data Type
String
ProxyPort Property (HTTPClient Class)
The port on the proxy server to connect to.
Syntax
int GetProxyPort();
int SetProxyPort(int iProxyPort);
Default Value
0
Remarks
The port on the proxy server to connect to.
Data Type
Integer
ProxyProxyType Property (HTTPClient Class)
The type of the proxy server.
Syntax
int GetProxyProxyType();
int SetProxyProxyType(int iProxyProxyType);
Possible Values
CPT_NONE(0),
CPT_SOCKS_4(1),
CPT_SOCKS_5(2),
CPT_WEB_TUNNEL(3),
CPT_HTTP(4)
Default Value
0
Remarks
The type of the proxy server.
The WebTunnel proxy is also known as HTTPS proxy. Unlike HTTP proxy, HTTPS proxy (WebTunnel) provides end-to-end security.
cptNone | 0 |
cptSocks4 | 1 |
cptSocks5 | 2 |
cptWebTunnel | 3 |
cptHTTP | 4 |
Data Type
Integer
ProxyRequestHeaders Property (HTTPClient Class)
Contains HTTP request headers for WebTunnel and HTTP proxy.
Syntax
QString GetProxyRequestHeaders();
int SetProxyRequestHeaders(QString qsProxyRequestHeaders);
Default Value
""
Remarks
Contains HTTP request headers for WebTunnel and HTTP proxy.
Data Type
String
ProxyResponseBody Property (HTTPClient Class)
Contains the HTTP or HTTPS (WebTunnel) proxy response body.
Syntax
QString GetProxyResponseBody();
int SetProxyResponseBody(QString qsProxyResponseBody);
Default Value
""
Remarks
Contains the HTTP or HTTPS (WebTunnel) proxy response body.
Data Type
String
ProxyResponseHeaders Property (HTTPClient Class)
Contains response headers received from an HTTP or HTTPS (WebTunnel) proxy server.
Syntax
QString GetProxyResponseHeaders();
int SetProxyResponseHeaders(QString qsProxyResponseHeaders);
Default Value
""
Remarks
Contains response headers received from an HTTP or HTTPS (WebTunnel) proxy server.
Data Type
String
ProxyUseIPv6 Property (HTTPClient Class)
Specifies whether IPv6 should be used when connecting through the proxy.
Syntax
bool GetProxyUseIPv6();
int SetProxyUseIPv6(bool bProxyUseIPv6);
Default Value
false
Remarks
Specifies whether IPv6 should be used when connecting through the proxy.
Data Type
Boolean
ProxyUseProxy Property (HTTPClient Class)
Enables or disables proxy-driven connection.
Syntax
bool GetProxyUseProxy();
int SetProxyUseProxy(bool bProxyUseProxy);
Default Value
false
Remarks
Enables or disables proxy-driven connection.
Data Type
Boolean
ProxyUsername Property (HTTPClient Class)
Specifies the username credential for proxy authentication.
Syntax
QString GetProxyUsername();
int SetProxyUsername(QString qsProxyUsername);
Default Value
""
Remarks
Specifies the username credential for proxy authentication.
Data Type
String
ReasonPhrase Property (HTTPClient Class)
Contains the Reason Phrase element of the server's response.
Syntax
QString GetReasonPhrase();
Default Value
""
Remarks
Use this property to access the reason phrase supplied by the server in its response (such as OK in HTTP 200 OK).
This property is read-only and not available at design time.
Data Type
String
ReqHeaderCount Property (HTTPClient Class)
The number of records in the ReqHeader arrays.
Syntax
int GetReqHeaderCount();
int SetReqHeaderCount(int iReqHeaderCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at ReqHeaderCount - 1.This property is not available at design time.
Data Type
Integer
ReqHeaderName Property (HTTPClient Class)
The name element in a (name, value) pair.
Syntax
QString GetReqHeaderName(int iReqHeaderIndex);
int SetReqHeaderName(int iReqHeaderIndex, QString qsReqHeaderName);
Default Value
""
Remarks
The name element in a (name, value) pair.
The ReqHeaderIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReqHeaderCount property.
This property is not available at design time.
Data Type
String
ReqHeaderValue Property (HTTPClient Class)
The value element in a (name, value) pair.
Syntax
QString GetReqHeaderValue(int iReqHeaderIndex);
int SetReqHeaderValue(int iReqHeaderIndex, QString qsReqHeaderValue);
Default Value
""
Remarks
The value element in a (name, value) pair.
The ReqHeaderIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ReqHeaderCount property.
This property is not available at design time.
Data Type
String
ReqParamsAccept Property (HTTPClient Class)
Specifies the Accept header property of the HTTP request.
Syntax
QString GetReqParamsAccept();
int SetReqParamsAccept(QString qsReqParamsAccept);
Default Value
""
Remarks
Specifies the Accept header field of the HTTP request. The Accept field defines which media types are accepted in the response.
This property is not available at design time.
Data Type
String
ReqParamsAcceptCharset Property (HTTPClient Class)
Specifies the Accept-Charset header property of the HTTP request.
Syntax
QString GetReqParamsAcceptCharset();
int SetReqParamsAcceptCharset(QString qsReqParamsAcceptCharset);
Default Value
""
Remarks
Specifies the Accept-Charset header field of the HTTP request. The Accept-Charset field specifies the character set which the client can understand.
This property is not available at design time.
Data Type
String
ReqParamsAcceptLanguage Property (HTTPClient Class)
Specifies the Accept-Language header property of the HTTP request.
Syntax
QString GetReqParamsAcceptLanguage();
int SetReqParamsAcceptLanguage(QString qsReqParamsAcceptLanguage);
Default Value
""
Remarks
Specifies the Accept-Language header field of the HTTP request. The Accept-Language field specifies the language (and locale) which the client can understand.
This property is not available at design time.
Data Type
String
ReqParamsAcceptRangeEnd Property (HTTPClient Class)
This property, in combination with AcceptRangeStart, defines the media-range of the HTTP request.
Syntax
qint64 GetReqParamsAcceptRangeEnd();
int SetReqParamsAcceptRangeEnd(qint64 lReqParamsAcceptRangeEnd);
Default Value
0
Remarks
This property, in combination with AcceptRangeStart, defines the media-range of the HTTP request.
This property is not available at design time.
Data Type
Long64
ReqParamsAcceptRangeStart Property (HTTPClient Class)
This property, in combination with AcceptRangeEnd, defines the media-range of the HTTP request.
Syntax
qint64 GetReqParamsAcceptRangeStart();
int SetReqParamsAcceptRangeStart(qint64 lReqParamsAcceptRangeStart);
Default Value
0
Remarks
This property, in combination with AcceptRangeEnd, defines the media-range of the HTTP request.
This property is not available at design time.
Data Type
Long64
ReqParamsAuthorization Property (HTTPClient Class)
Specifies the Authorization header of the HTTP request.
Syntax
QString GetReqParamsAuthorization();
int SetReqParamsAuthorization(QString qsReqParamsAuthorization);
Default Value
""
Remarks
Specifies the Authorization header of the HTTP request. This header contains the credentials to authenticate a user with a server.
This property is not available at design time.
Data Type
String
ReqParamsConnection Property (HTTPClient Class)
Specifies the value to pass to the Connection header property of HTTP request.
Syntax
QString GetReqParamsConnection();
int SetReqParamsConnection(QString qsReqParamsConnection);
Default Value
""
Remarks
Specifies the value to pass to the Connection header field of HTTP request.
This property is not available at design time.
Data Type
String
ReqParamsContentLength Property (HTTPClient Class)
Specifies the size of the entity-body of the HTTP request.
Syntax
qint64 GetReqParamsContentLength();
int SetReqParamsContentLength(qint64 lReqParamsContentLength);
Default Value
0
Remarks
Specifies the size of the entity-body of the HTTP request. Leave this field set to 0 to make the class calculate it automatically.
This property is not available at design time.
Data Type
Long64
ReqParamsContentRangeEnd Property (HTTPClient Class)
Specifies the upper bound used in the Content-Range header of the HTTP request.
Syntax
qint64 GetReqParamsContentRangeEnd();
int SetReqParamsContentRangeEnd(qint64 lReqParamsContentRangeEnd);
Default Value
0
Remarks
Specifies the upper bound used in the Content-Range header of the HTTP request.
This property is not available at design time.
Data Type
Long64
ReqParamsContentRangeFullSize Property (HTTPClient Class)
Specifies the total length of the full entity-body of the HTTP request.
Syntax
qint64 GetReqParamsContentRangeFullSize();
int SetReqParamsContentRangeFullSize(qint64 lReqParamsContentRangeFullSize);
Default Value
0
Remarks
Specifies the total length of the full entity-body of the HTTP request.
This property is not available at design time.
Data Type
Long64
ReqParamsContentRangeStart Property (HTTPClient Class)
Specifies the lower bound used in the Content-Range header of the HTTP request.
Syntax
qint64 GetReqParamsContentRangeStart();
int SetReqParamsContentRangeStart(qint64 lReqParamsContentRangeStart);
Default Value
0
Remarks
Specifies the lower bound used in the Content-Range header of the HTTP request.
This property is not available at design time.
Data Type
Long64
ReqParamsContentType Property (HTTPClient Class)
The Content-Type header property of the HTTP request.
Syntax
QString GetReqParamsContentType();
int SetReqParamsContentType(QString qsReqParamsContentType);
Default Value
""
Remarks
The Content-Type header field of the HTTP request.
This property is not available at design time.
Data Type
String
ReqParamsCookie Property (HTTPClient Class)
This header is expected to be assigned with cookies previously received from the server and stored by the client.
Syntax
QString GetReqParamsCookie();
int SetReqParamsCookie(QString qsReqParamsCookie);
Default Value
""
Remarks
This header is expected to be assigned with cookies previously received from the server and stored by the client.
This property is not available at design time.
Data Type
String
ReqParamsCustomHeaders Property (HTTPClient Class)
Assign any custom HTTP headers to be passed to the server to this property.
Syntax
QString GetReqParamsCustomHeaders();
int SetReqParamsCustomHeaders(QString qsReqParamsCustomHeaders);
Default Value
""
Remarks
Assign any custom HTTP headers to be passed to the server to this property.
This property is not available at design time.
Data Type
String
ReqParamsDate Property (HTTPClient Class)
The date and time of the request.
Syntax
QString GetReqParamsDate();
int SetReqParamsDate(QString qsReqParamsDate);
Default Value
""
Remarks
The date and time of the request.
This property is not available at design time.
Data Type
String
ReqParamsFrom Property (HTTPClient Class)
Contains the From header property of the HTTP request.
Syntax
QString GetReqParamsFrom();
int SetReqParamsFrom(QString qsReqParamsFrom);
Default Value
""
Remarks
Contains the From header field of the HTTP request. It specifies the e-mail address for the human user who controls the requesting user agent.
This property is not available at design time.
Data Type
String
ReqParamsHost Property (HTTPClient Class)
This property contains the Host header property of the HTTP request.
Syntax
QString GetReqParamsHost();
int SetReqParamsHost(QString qsReqParamsHost);
Default Value
""
Remarks
This property contains the Host header field of the HTTP request. It specifies the host and port number of the resource being requested.
This property is not available at design time.
Data Type
String
ReqParamsHTTPVersion Property (HTTPClient Class)
Specifies the version of HTTP protocol to use: 1.
Syntax
int GetReqParamsHTTPVersion();
int SetReqParamsHTTPVersion(int iReqParamsHTTPVersion);
Possible Values
CHV_HTTP10(0),
CHV_HTTP11(1)
Default Value
1
Remarks
Specifies the version of HTTP protocol to use: 1.0 or 1.1.
chvHTTP10 | HTTP/1.0 (0) |
chvHTTP11 | HTTP/1.1 (1) |
This property is not available at design time.
Data Type
Integer
ReqParamsIfMatch Property (HTTPClient Class)
Contains the If-Match request header property.
Syntax
QString GetReqParamsIfMatch();
int SetReqParamsIfMatch(QString qsReqParamsIfMatch);
Default Value
""
Remarks
Contains the If-Match request header field. This property makes the requested method conditional: when If-Match field is set, only the entities matching the included entity tags will be returned by the server.
This property is not available at design time.
Data Type
String
ReqParamsIfModifiedSince Property (HTTPClient Class)
Contains the If-Modified-Since request header property.
Syntax
QString GetReqParamsIfModifiedSince();
int SetReqParamsIfModifiedSince(QString qsReqParamsIfModifiedSince);
Default Value
""
Remarks
Contains the If-Modified-Since request header field. This property makes the requested method conditional: when If-Modified-Since field is set, only the modified entities will be returned by the server.
This property is not available at design time.
Data Type
String
ReqParamsIfNoneMatch Property (HTTPClient Class)
Contains the If-None-Match request header property.
Syntax
QString GetReqParamsIfNoneMatch();
int SetReqParamsIfNoneMatch(QString qsReqParamsIfNoneMatch);
Default Value
""
Remarks
Contains the If-None-Match request header field. This property makes the requested method conditional: when If-None-Match field is set, only the entities which doesn't match the included entity tags will be returned by the server.
This property is not available at design time.
Data Type
String
ReqParamsIfUnmodifiedSince Property (HTTPClient Class)
Contains the If-Unmodified-Since request header property.
Syntax
QString GetReqParamsIfUnmodifiedSince();
int SetReqParamsIfUnmodifiedSince(QString qsReqParamsIfUnmodifiedSince);
Default Value
""
Remarks
Contains the If-Unmodified-Since request header field. This property makes the requested method conditional: when If-Unmodified-Since field is set, only the unmodified entities will be returned by the server.
This property is not available at design time.
Data Type
String
ReqParamsPassword Property (HTTPClient Class)
Assign this property with the user's password.
Syntax
QString GetReqParamsPassword();
int SetReqParamsPassword(QString qsReqParamsPassword);
Default Value
""
Remarks
Assign this property with the user's password.
This property is not available at design time.
Data Type
String
ReqParamsReferer Property (HTTPClient Class)
The Referer property of the HTTP request header specifies the address of the resource from which the Request-URI was obtained (the referrer).
Syntax
QString GetReqParamsReferer();
int SetReqParamsReferer(QString qsReqParamsReferer);
Default Value
""
Remarks
The Referer field of the HTTP request header specifies the address of the resource from which the Request-URI was obtained (the referrer).
This property is not available at design time.
Data Type
String
ReqParamsUserAgent Property (HTTPClient Class)
The User-Agent property of the HTTP request provides information about the software that initiates the request.
Syntax
QString GetReqParamsUserAgent();
int SetReqParamsUserAgent(QString qsReqParamsUserAgent);
Default Value
""
Remarks
The User-Agent field of the HTTP request provides information about the software that initiates the request.
This property is not available at design time.
Data Type
String
ReqParamsUsername Property (HTTPClient Class)
Assign this property with the user's login name.
Syntax
QString GetReqParamsUsername();
int SetReqParamsUsername(QString qsReqParamsUsername);
Default Value
""
Remarks
Assign this property with the user's login name.
This property is not available at design time.
Data Type
String
RespHeaderCount Property (HTTPClient Class)
The number of records in the RespHeader arrays.
Syntax
int GetRespHeaderCount();
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at RespHeaderCount - 1.This property is read-only and not available at design time.
Data Type
Integer
RespHeaderName Property (HTTPClient Class)
The name element in a (name, value) pair.
Syntax
QString GetRespHeaderName(int iRespHeaderIndex);
Default Value
""
Remarks
The name element in a (name, value) pair.
The RespHeaderIndex parameter specifies the index of the item in the array. The size of the array is controlled by the RespHeaderCount property.
This property is read-only and not available at design time.
Data Type
String
RespHeaderValue Property (HTTPClient Class)
The value element in a (name, value) pair.
Syntax
QString GetRespHeaderValue(int iRespHeaderIndex);
Default Value
""
Remarks
The value element in a (name, value) pair.
The RespHeaderIndex parameter specifies the index of the item in the array. The size of the array is controlled by the RespHeaderCount property.
This property is read-only and not available at design time.
Data Type
String
RespParamsContentLength Property (HTTPClient Class)
Indicates the length of the response content in bytes.
Syntax
qint64 GetRespParamsContentLength();
Default Value
0
Remarks
Indicates the length of the response content in bytes.
This property is read-only and not available at design time.
Data Type
Long64
RespParamsDate Property (HTTPClient Class)
The date and time at which the response was generated, in server time, in UTC.
Syntax
QString GetRespParamsDate();
Default Value
""
Remarks
The date and time at which the response was generated, in server time, in UTC.
This property is read-only and not available at design time.
Data Type
String
RespParamsReasonPhrase Property (HTTPClient Class)
Contains the reason phrase (a human-readable comment) of the request processing status, which corresponds to, and complements, the staus code.
Syntax
QString GetRespParamsReasonPhrase();
Default Value
""
Remarks
Contains the reason phrase (a human-readable comment) of the request processing status, which corresponds to, and complements, the staus code.
This property is read-only and not available at design time.
Data Type
String
RespParamsStatusCode Property (HTTPClient Class)
The server-generated status code of the request processing status.
Syntax
int GetRespParamsStatusCode();
Default Value
0
Remarks
The server-generated status code of the request processing status.
The code is a 3-digit integer where the first digit defines the class of the response:
1 | Informational |
2 | Success |
3 | Redirection |
4 | Client Error |
5 | Server Error |
Common examples are 200 (page served succesfully), 404 (page not found), 302 (redirect), and 500 (internal server error).
This property is read-only and not available at design time.
Data Type
Integer
ServerCertCount Property (HTTPClient Class)
The number of records in the ServerCert arrays.
Syntax
int GetServerCertCount();
Default Value
0
Remarks
This property controls the size of the following arrays:
- ServerCertBytes
- ServerCertCAKeyID
- ServerCertFingerprint
- ServerCertHandle
- ServerCertIssuer
- ServerCertIssuerRDN
- ServerCertKeyAlgorithm
- ServerCertKeyBits
- ServerCertKeyFingerprint
- ServerCertKeyUsage
- ServerCertPublicKeyBytes
- ServerCertSelfSigned
- ServerCertSerialNumber
- ServerCertSigAlgorithm
- ServerCertSubject
- ServerCertSubjectKeyID
- ServerCertSubjectRDN
- ServerCertValidFrom
- ServerCertValidTo
This property is read-only and not available at design time.
Data Type
Integer
ServerCertBytes Property (HTTPClient Class)
Returns raw certificate data in DER format.
Syntax
QByteArray GetServerCertBytes(int iServerCertIndex);
Remarks
Returns raw certificate data in DER format.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertCAKeyID Property (HTTPClient Class)
A unique identifier (fingerprint) of the CA certificate's private key.
Syntax
QByteArray GetServerCertCAKeyID(int iServerCertIndex);
Remarks
A unique identifier (fingerprint) of the CA certificate's private key.
Authority Key Identifier is a (non-critical) X.509 certificate extension which allows the identification of certificates produced by the same issuer, but with different public keys.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertFingerprint Property (HTTPClient Class)
Contains the fingerprint (a hash imprint) of this certificate.
Syntax
QByteArray GetServerCertFingerprint(int iServerCertIndex);
Remarks
Contains the fingerprint (a hash imprint) of this certificate.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetServerCertHandle(int iServerCertIndex);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Long64
ServerCertIssuer Property (HTTPClient Class)
The common name of the certificate issuer (CA), typically a company name.
Syntax
QString GetServerCertIssuer(int iServerCertIndex);
Default Value
""
Remarks
The common name of the certificate issuer (CA), typically a company name.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertIssuerRDN Property (HTTPClient Class)
A collection of information, in the form of [OID, Value] pairs, uniquely identifying the certificate issuer.
Syntax
QString GetServerCertIssuerRDN(int iServerCertIndex);
Default Value
""
Remarks
A collection of information, in the form of [OID, Value] pairs, uniquely identifying the certificate issuer.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertKeyAlgorithm Property (HTTPClient Class)
Specifies the public key algorithm of this certificate.
Syntax
QString GetServerCertKeyAlgorithm(int iServerCertIndex);
Default Value
"0"
Remarks
Specifies the public key algorithm of this certificate.
SB_CERT_ALGORITHM_ID_RSA_ENCRYPTION | rsaEncryption | |
SB_CERT_ALGORITHM_MD2_RSA_ENCRYPTION | md2withRSAEncryption | |
SB_CERT_ALGORITHM_MD5_RSA_ENCRYPTION | md5withRSAEncryption | |
SB_CERT_ALGORITHM_SHA1_RSA_ENCRYPTION | sha1withRSAEncryption | |
SB_CERT_ALGORITHM_ID_DSA | id-dsa | |
SB_CERT_ALGORITHM_ID_DSA_SHA1 | id-dsa-with-sha1 | |
SB_CERT_ALGORITHM_DH_PUBLIC | dhpublicnumber | |
SB_CERT_ALGORITHM_SHA224_RSA_ENCRYPTION | sha224WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA256_RSA_ENCRYPTION | sha256WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA384_RSA_ENCRYPTION | sha384WithRSAEncryption | |
SB_CERT_ALGORITHM_SHA512_RSA_ENCRYPTION | sha512WithRSAEncryption | |
SB_CERT_ALGORITHM_ID_RSAPSS | id-RSASSA-PSS | |
SB_CERT_ALGORITHM_ID_RSAOAEP | id-RSAES-OAEP | |
SB_CERT_ALGORITHM_RSASIGNATURE_RIPEMD160 | ripemd160withRSA | |
SB_CERT_ALGORITHM_ID_ELGAMAL | elGamal | |
SB_CERT_ALGORITHM_SHA1_ECDSA | ecdsa-with-SHA1 | |
SB_CERT_ALGORITHM_RECOMMENDED_ECDSA | ecdsa-recommended | |
SB_CERT_ALGORITHM_SHA224_ECDSA | ecdsa-with-SHA224 | |
SB_CERT_ALGORITHM_SHA256_ECDSA | ecdsa-with-SHA256 | |
SB_CERT_ALGORITHM_SHA384_ECDSA | ecdsa-with-SHA384 | |
SB_CERT_ALGORITHM_SHA512_ECDSA | ecdsa-with-SHA512 | |
SB_CERT_ALGORITHM_EC | id-ecPublicKey | |
SB_CERT_ALGORITHM_SPECIFIED_ECDSA | ecdsa-specified | |
SB_CERT_ALGORITHM_GOST_R3410_1994 | id-GostR3410-94 | |
SB_CERT_ALGORITHM_GOST_R3410_2001 | id-GostR3410-2001 | |
SB_CERT_ALGORITHM_GOST_R3411_WITH_R3410_1994 | id-GostR3411-94-with-GostR3410-94 | |
SB_CERT_ALGORITHM_GOST_R3411_WITH_R3410_2001 | id-GostR3411-94-with-GostR3410-2001 | |
SB_CERT_ALGORITHM_SHA1_ECDSA_PLAIN | ecdsa-plain-SHA1 | |
SB_CERT_ALGORITHM_SHA224_ECDSA_PLAIN | ecdsa-plain-SHA224 | |
SB_CERT_ALGORITHM_SHA256_ECDSA_PLAIN | ecdsa-plain-SHA256 | |
SB_CERT_ALGORITHM_SHA384_ECDSA_PLAIN | ecdsa-plain-SHA384 | |
SB_CERT_ALGORITHM_SHA512_ECDSA_PLAIN | ecdsa-plain-SHA512 | |
SB_CERT_ALGORITHM_RIPEMD160_ECDSA_PLAIN | ecdsa-plain-RIPEMD160 | |
SB_CERT_ALGORITHM_WHIRLPOOL_RSA_ENCRYPTION | whirlpoolWithRSAEncryption | |
SB_CERT_ALGORITHM_ID_DSA_SHA224 | id-dsa-with-sha224 | |
SB_CERT_ALGORITHM_ID_DSA_SHA256 | id-dsa-with-sha256 | |
SB_CERT_ALGORITHM_SHA3_224_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-sha3-512 | |
SB_CERT_ALGORITHM_SHA3_224_ECDSA | id-ecdsa-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_ECDSA | id-ecdsa-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_ECDSA | id-ecdsa-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_ECDSA | id-ecdsa-with-sha3-512 | |
SB_CERT_ALGORITHM_SHA3_224_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-224 | |
SB_CERT_ALGORITHM_SHA3_256_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-256 | |
SB_CERT_ALGORITHM_SHA3_384_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-384 | |
SB_CERT_ALGORITHM_SHA3_512_ECDSA_PLAIN | id-ecdsa-plain-with-sha3-512 | |
SB_CERT_ALGORITHM_ID_DSA_SHA3_224 | id-dsa-with-sha3-224 | |
SB_CERT_ALGORITHM_ID_DSA_SHA3_256 | id-dsa-with-sha3-256 | |
SB_CERT_ALGORITHM_BLAKE2S_128_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_RSA_ENCRYPTION | id-rsassa-pkcs1-v1_5-with-blake2b512 | |
SB_CERT_ALGORITHM_BLAKE2S_128_ECDSA | id-ecdsa-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_ECDSA | id-ecdsa-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_ECDSA | id-ecdsa-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_ECDSA | id-ecdsa-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_ECDSA | id-ecdsa-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_ECDSA | id-ecdsa-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_ECDSA | id-ecdsa-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_ECDSA | id-ecdsa-with-blake2b512 | |
SB_CERT_ALGORITHM_BLAKE2S_128_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s128 | |
SB_CERT_ALGORITHM_BLAKE2S_160_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s160 | |
SB_CERT_ALGORITHM_BLAKE2S_224_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s224 | |
SB_CERT_ALGORITHM_BLAKE2S_256_ECDSA_PLAIN | id-ecdsa-plain-with-blake2s256 | |
SB_CERT_ALGORITHM_BLAKE2B_160_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b160 | |
SB_CERT_ALGORITHM_BLAKE2B_256_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b256 | |
SB_CERT_ALGORITHM_BLAKE2B_384_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b384 | |
SB_CERT_ALGORITHM_BLAKE2B_512_ECDSA_PLAIN | id-ecdsa-plain-with-blake2b512 | |
SB_CERT_ALGORITHM_ID_DSA_BLAKE2S_224 | id-dsa-with-blake2s224 | |
SB_CERT_ALGORITHM_ID_DSA_BLAKE2S_256 | id-dsa-with-blake2s256 | |
SB_CERT_ALGORITHM_EDDSA_ED25519 | id-Ed25519 | |
SB_CERT_ALGORITHM_EDDSA_ED448 | id-Ed448 | |
SB_CERT_ALGORITHM_EDDSA_ED25519_PH | id-Ed25519ph | |
SB_CERT_ALGORITHM_EDDSA_ED448_PH | id-Ed448ph | |
SB_CERT_ALGORITHM_EDDSA | id-EdDSA | |
SB_CERT_ALGORITHM_EDDSA_SIGNATURE | id-EdDSA-sig |
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertKeyBits Property (HTTPClient Class)
Returns the length of the public key.
Syntax
int GetServerCertKeyBits(int iServerCertIndex);
Default Value
0
Remarks
Returns the length of the public key.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Integer
ServerCertKeyFingerprint Property (HTTPClient Class)
Returns a fingerprint of the public key contained in the certificate.
Syntax
QByteArray GetServerCertKeyFingerprint(int iServerCertIndex);
Remarks
Returns a fingerprint of the public key contained in the certificate.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertKeyUsage Property (HTTPClient Class)
Indicates the purposes of the key contained in the certificate, in the form of an OR'ed flag set.
Syntax
int GetServerCertKeyUsage(int iServerCertIndex);
Default Value
0
Remarks
Indicates the purposes of the key contained in the certificate, in the form of an OR'ed flag set.
This value is a bit mask of the following values:
ckuUnknown | 0x00000 | Unknown key usage |
ckuDigitalSignature | 0x00001 | Digital signature |
ckuNonRepudiation | 0x00002 | Non-repudiation |
ckuKeyEncipherment | 0x00004 | Key encipherment |
ckuDataEncipherment | 0x00008 | Data encipherment |
ckuKeyAgreement | 0x00010 | Key agreement |
ckuKeyCertSign | 0x00020 | Certificate signing |
ckuCRLSign | 0x00040 | Revocation signing |
ckuEncipherOnly | 0x00080 | Encipher only |
ckuDecipherOnly | 0x00100 | Decipher only |
ckuServerAuthentication | 0x00200 | Server authentication |
ckuClientAuthentication | 0x00400 | Client authentication |
ckuCodeSigning | 0x00800 | Code signing |
ckuEmailProtection | 0x01000 | Email protection |
ckuTimeStamping | 0x02000 | Timestamping |
ckuOCSPSigning | 0x04000 | OCSP signing |
ckuSmartCardLogon | 0x08000 | Smartcard logon |
ckuKeyPurposeClientAuth | 0x10000 | Kerberos - client authentication |
ckuKeyPurposeKDC | 0x20000 | Kerberos - KDC |
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Integer
ServerCertPublicKeyBytes Property (HTTPClient Class)
Contains the certificate's public key in DER format.
Syntax
QByteArray GetServerCertPublicKeyBytes(int iServerCertIndex);
Remarks
Contains the certificate's public key in DER format.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertSelfSigned Property (HTTPClient Class)
Indicates whether the certificate is self-signed (root) or signed by an external CA.
Syntax
bool GetServerCertSelfSigned(int iServerCertIndex);
Default Value
false
Remarks
Indicates whether the certificate is self-signed (root) or signed by an external CA.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Boolean
ServerCertSerialNumber Property (HTTPClient Class)
Returns the certificate's serial number.
Syntax
QByteArray GetServerCertSerialNumber(int iServerCertIndex);
Remarks
Returns the certificate's serial number.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertSigAlgorithm Property (HTTPClient Class)
Indicates the algorithm that was used by the CA to sign this certificate.
Syntax
QString GetServerCertSigAlgorithm(int iServerCertIndex);
Default Value
""
Remarks
Indicates the algorithm that was used by the CA to sign this certificate.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertSubject Property (HTTPClient Class)
The common name of the certificate holder, typically an individual's name, a URL, an e-mail address, or a company name.
Syntax
QString GetServerCertSubject(int iServerCertIndex);
Default Value
""
Remarks
The common name of the certificate holder, typically an individual's name, a URL, an e-mail address, or a company name.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertSubjectKeyID Property (HTTPClient Class)
Contains a unique identifier (fingerprint) of the certificate's private key.
Syntax
QByteArray GetServerCertSubjectKeyID(int iServerCertIndex);
Remarks
Contains a unique identifier (fingerprint) of the certificate's private key.
Subject Key Identifier is a (non-critical) X.509 certificate extension which allows the identification of certificates containing a particular public key. In SecureBlackbox, the unique identifier is represented with a SHA1 hash of the bit string of the subject public key.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
ServerCertSubjectRDN Property (HTTPClient Class)
A collection of information, in the form of [OID, Value] pairs, uniquely identifying the certificate holder (subject).
Syntax
QString GetServerCertSubjectRDN(int iServerCertIndex);
Default Value
""
Remarks
A collection of information, in the form of [OID, Value] pairs, uniquely identifying the certificate holder (subject).
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertValidFrom Property (HTTPClient Class)
The time point at which the certificate becomes valid, in UTC.
Syntax
QString GetServerCertValidFrom(int iServerCertIndex);
Default Value
""
Remarks
The time point at which the certificate becomes valid, in UTC.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
ServerCertValidTo Property (HTTPClient Class)
The time point at which the certificate expires, in UTC.
Syntax
QString GetServerCertValidTo(int iServerCertIndex);
Default Value
""
Remarks
The time point at which the certificate expires, in UTC.
The ServerCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the ServerCertCount property.
This property is read-only and not available at design time.
Data Type
String
SocketDNSMode Property (HTTPClient Class)
Selects the DNS resolver to use: the class's (secure) built-in one, or the one provided by the system.
Syntax
int GetSocketDNSMode();
int SetSocketDNSMode(int iSocketDNSMode);
Possible Values
DM_AUTO(0),
DM_PLATFORM(1),
DM_OWN(2),
DM_OWN_SECURE(3)
Default Value
0
Remarks
Selects the DNS resolver to use: the component's (secure) built-in one, or the one provided by the system.
dmAuto | 0 |
dmPlatform | 1 |
dmOwn | 2 |
dmOwnSecure | 3 |
Data Type
Integer
SocketDNSPort Property (HTTPClient Class)
Specifies the port number to be used for sending queries to the DNS server.
Syntax
int GetSocketDNSPort();
int SetSocketDNSPort(int iSocketDNSPort);
Default Value
0
Remarks
Specifies the port number to be used for sending queries to the DNS server.
Data Type
Integer
SocketDNSQueryTimeout Property (HTTPClient Class)
The timeout (in milliseconds) for each DNS query.
Syntax
int GetSocketDNSQueryTimeout();
int SetSocketDNSQueryTimeout(int iSocketDNSQueryTimeout);
Default Value
0
Remarks
The timeout (in milliseconds) for each DNS query. The value of 0 indicates the infinite timeout.
Data Type
Integer
SocketDNSServers Property (HTTPClient Class)
The addresses of DNS servers to use for address resolution, separated by commas or semicolons.
Syntax
QString GetSocketDNSServers();
int SetSocketDNSServers(QString qsSocketDNSServers);
Default Value
""
Remarks
The addresses of DNS servers to use for address resolution, separated by commas or semicolons.
Data Type
String
SocketDNSTotalTimeout Property (HTTPClient Class)
The timeout (in milliseconds) for the whole resolution process.
Syntax
int GetSocketDNSTotalTimeout();
int SetSocketDNSTotalTimeout(int iSocketDNSTotalTimeout);
Default Value
0
Remarks
The timeout (in milliseconds) for the whole resolution process. The value of 0 indicates the infinite timeout.
Data Type
Integer
SocketIncomingSpeedLimit Property (HTTPClient Class)
The maximum number of bytes to read from the socket, per second.
Syntax
int GetSocketIncomingSpeedLimit();
int SetSocketIncomingSpeedLimit(int iSocketIncomingSpeedLimit);
Default Value
0
Remarks
The maximum number of bytes to read from the socket, per second.
Data Type
Integer
SocketLocalAddress Property (HTTPClient Class)
The local network interface to bind the socket to.
Syntax
QString GetSocketLocalAddress();
int SetSocketLocalAddress(QString qsSocketLocalAddress);
Default Value
""
Remarks
The local network interface to bind the socket to.
Data Type
String
SocketLocalPort Property (HTTPClient Class)
The local port number to bind the socket to.
Syntax
int GetSocketLocalPort();
int SetSocketLocalPort(int iSocketLocalPort);
Default Value
0
Remarks
The local port number to bind the socket to.
Data Type
Integer
SocketOutgoingSpeedLimit Property (HTTPClient Class)
The maximum number of bytes to write to the socket, per second.
Syntax
int GetSocketOutgoingSpeedLimit();
int SetSocketOutgoingSpeedLimit(int iSocketOutgoingSpeedLimit);
Default Value
0
Remarks
The maximum number of bytes to write to the socket, per second.
Data Type
Integer
SocketTimeout Property (HTTPClient Class)
The maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful.
Syntax
int GetSocketTimeout();
int SetSocketTimeout(int iSocketTimeout);
Default Value
60000
Remarks
The maximum period of waiting, in milliseconds, after which the socket operation is considered unsuccessful.
If Timeout is set to 0, a socket operation will expire after the system-default timeout (2 hrs 8 min for TCP stack).
Data Type
Integer
SocketUseIPv6 Property (HTTPClient Class)
Enables or disables IP protocol version 6.
Syntax
bool GetSocketUseIPv6();
int SetSocketUseIPv6(bool bSocketUseIPv6);
Default Value
false
Remarks
Enables or disables IP protocol version 6.
Data Type
Boolean
StatusCode Property (HTTPClient Class)
Contains the Status Code element of the server's response.
Syntax
int GetStatusCode();
Default Value
0
Remarks
Use this property to access the status code supplied by the server in its response (such as 200 in HTTP 200 OK).
This property is read-only and not available at design time.
Data Type
Integer
TLSAutoValidateCertificates Property (HTTPClient Class)
Specifies whether server-side TLS certificates should be validated automatically using internal validation rules.
Syntax
bool GetTLSAutoValidateCertificates();
int SetTLSAutoValidateCertificates(bool bTLSAutoValidateCertificates);
Default Value
true
Remarks
Specifies whether server-side TLS certificates should be validated automatically using internal validation rules.
Data Type
Boolean
TLSBaseConfiguration Property (HTTPClient Class)
Selects the base configuration for the TLS settings.
Syntax
int GetTLSBaseConfiguration();
int SetTLSBaseConfiguration(int iTLSBaseConfiguration);
Possible Values
STPC_DEFAULT(0),
STPC_COMPATIBLE(1),
STPC_COMPREHENSIVE_INSECURE(2),
STPC_HIGHLY_SECURE(3)
Default Value
0
Remarks
Selects the base configuration for the TLS settings. Several profiles are on offer, tuned up for different purposes, such as high security or higher compatibility.
stpcDefault | 0 | |
stpcCompatible | 1 | |
stpcComprehensiveInsecure | 2 | |
stpcHighlySecure | 3 |
Data Type
Integer
TLSCiphersuites Property (HTTPClient Class)
A list of ciphersuites separated with commas or semicolons.
Syntax
QString GetTLSCiphersuites();
int SetTLSCiphersuites(QString qsTLSCiphersuites);
Default Value
""
Remarks
A list of ciphersuites separated with commas or semicolons. Each ciphersuite in the list may be prefixed with a minus sign (-) to indicate that the ciphersuite should be disabled rather than enabled. Besides the specific ciphersuite modifiers, this property supports the all (and -all) aliases that allow to blanketly enable or disable all ciphersuites at once.
Note: the list of ciphersuites provided to this property alters the baseline list of ciphersuites as defined by BaseConfiguration. Remember to start your ciphersuite string with -all; if you need to only enable a specific fixed set of ciphersuites. The list of supported ciphersuites is provided below:
- NULL_NULL_NULL
- RSA_NULL_MD5
- RSA_NULL_SHA
- RSA_RC4_MD5
- RSA_RC4_SHA
- RSA_RC2_MD5
- RSA_IDEA_MD5
- RSA_IDEA_SHA
- RSA_DES_MD5
- RSA_DES_SHA
- RSA_3DES_MD5
- RSA_3DES_SHA
- RSA_AES128_SHA
- RSA_AES256_SHA
- DH_DSS_DES_SHA
- DH_DSS_3DES_SHA
- DH_DSS_AES128_SHA
- DH_DSS_AES256_SHA
- DH_RSA_DES_SHA
- DH_RSA_3DES_SHA
- DH_RSA_AES128_SHA
- DH_RSA_AES256_SHA
- DHE_DSS_DES_SHA
- DHE_DSS_3DES_SHA
- DHE_DSS_AES128_SHA
- DHE_DSS_AES256_SHA
- DHE_RSA_DES_SHA
- DHE_RSA_3DES_SHA
- DHE_RSA_AES128_SHA
- DHE_RSA_AES256_SHA
- DH_ANON_RC4_MD5
- DH_ANON_DES_SHA
- DH_ANON_3DES_SHA
- DH_ANON_AES128_SHA
- DH_ANON_AES256_SHA
- RSA_RC2_MD5_EXPORT
- RSA_RC4_MD5_EXPORT
- RSA_DES_SHA_EXPORT
- DH_DSS_DES_SHA_EXPORT
- DH_RSA_DES_SHA_EXPORT
- DHE_DSS_DES_SHA_EXPORT
- DHE_RSA_DES_SHA_EXPORT
- DH_ANON_RC4_MD5_EXPORT
- DH_ANON_DES_SHA_EXPORT
- RSA_CAMELLIA128_SHA
- DH_DSS_CAMELLIA128_SHA
- DH_RSA_CAMELLIA128_SHA
- DHE_DSS_CAMELLIA128_SHA
- DHE_RSA_CAMELLIA128_SHA
- DH_ANON_CAMELLIA128_SHA
- RSA_CAMELLIA256_SHA
- DH_DSS_CAMELLIA256_SHA
- DH_RSA_CAMELLIA256_SHA
- DHE_DSS_CAMELLIA256_SHA
- DHE_RSA_CAMELLIA256_SHA
- DH_ANON_CAMELLIA256_SHA
- PSK_RC4_SHA
- PSK_3DES_SHA
- PSK_AES128_SHA
- PSK_AES256_SHA
- DHE_PSK_RC4_SHA
- DHE_PSK_3DES_SHA
- DHE_PSK_AES128_SHA
- DHE_PSK_AES256_SHA
- RSA_PSK_RC4_SHA
- RSA_PSK_3DES_SHA
- RSA_PSK_AES128_SHA
- RSA_PSK_AES256_SHA
- RSA_SEED_SHA
- DH_DSS_SEED_SHA
- DH_RSA_SEED_SHA
- DHE_DSS_SEED_SHA
- DHE_RSA_SEED_SHA
- DH_ANON_SEED_SHA
- SRP_SHA_3DES_SHA
- SRP_SHA_RSA_3DES_SHA
- SRP_SHA_DSS_3DES_SHA
- SRP_SHA_AES128_SHA
- SRP_SHA_RSA_AES128_SHA
- SRP_SHA_DSS_AES128_SHA
- SRP_SHA_AES256_SHA
- SRP_SHA_RSA_AES256_SHA
- SRP_SHA_DSS_AES256_SHA
- ECDH_ECDSA_NULL_SHA
- ECDH_ECDSA_RC4_SHA
- ECDH_ECDSA_3DES_SHA
- ECDH_ECDSA_AES128_SHA
- ECDH_ECDSA_AES256_SHA
- ECDHE_ECDSA_NULL_SHA
- ECDHE_ECDSA_RC4_SHA
- ECDHE_ECDSA_3DES_SHA
- ECDHE_ECDSA_AES128_SHA
- ECDHE_ECDSA_AES256_SHA
- ECDH_RSA_NULL_SHA
- ECDH_RSA_RC4_SHA
- ECDH_RSA_3DES_SHA
- ECDH_RSA_AES128_SHA
- ECDH_RSA_AES256_SHA
- ECDHE_RSA_NULL_SHA
- ECDHE_RSA_RC4_SHA
- ECDHE_RSA_3DES_SHA
- ECDHE_RSA_AES128_SHA
- ECDHE_RSA_AES256_SHA
- ECDH_ANON_NULL_SHA
- ECDH_ANON_RC4_SHA
- ECDH_ANON_3DES_SHA
- ECDH_ANON_AES128_SHA
- ECDH_ANON_AES256_SHA
- RSA_NULL_SHA256
- RSA_AES128_SHA256
- RSA_AES256_SHA256
- DH_DSS_AES128_SHA256
- DH_RSA_AES128_SHA256
- DHE_DSS_AES128_SHA256
- DHE_RSA_AES128_SHA256
- DH_DSS_AES256_SHA256
- DH_RSA_AES256_SHA256
- DHE_DSS_AES256_SHA256
- DHE_RSA_AES256_SHA256
- DH_ANON_AES128_SHA256
- DH_ANON_AES256_SHA256
- RSA_AES128_GCM_SHA256
- RSA_AES256_GCM_SHA384
- DHE_RSA_AES128_GCM_SHA256
- DHE_RSA_AES256_GCM_SHA384
- DH_RSA_AES128_GCM_SHA256
- DH_RSA_AES256_GCM_SHA384
- DHE_DSS_AES128_GCM_SHA256
- DHE_DSS_AES256_GCM_SHA384
- DH_DSS_AES128_GCM_SHA256
- DH_DSS_AES256_GCM_SHA384
- DH_ANON_AES128_GCM_SHA256
- DH_ANON_AES256_GCM_SHA384
- ECDHE_ECDSA_AES128_SHA256
- ECDHE_ECDSA_AES256_SHA384
- ECDH_ECDSA_AES128_SHA256
- ECDH_ECDSA_AES256_SHA384
- ECDHE_RSA_AES128_SHA256
- ECDHE_RSA_AES256_SHA384
- ECDH_RSA_AES128_SHA256
- ECDH_RSA_AES256_SHA384
- ECDHE_ECDSA_AES128_GCM_SHA256
- ECDHE_ECDSA_AES256_GCM_SHA384
- ECDH_ECDSA_AES128_GCM_SHA256
- ECDH_ECDSA_AES256_GCM_SHA384
- ECDHE_RSA_AES128_GCM_SHA256
- ECDHE_RSA_AES256_GCM_SHA384
- ECDH_RSA_AES128_GCM_SHA256
- ECDH_RSA_AES256_GCM_SHA384
- PSK_AES128_GCM_SHA256
- PSK_AES256_GCM_SHA384
- DHE_PSK_AES128_GCM_SHA256
- DHE_PSK_AES256_GCM_SHA384
- RSA_PSK_AES128_GCM_SHA256
- RSA_PSK_AES256_GCM_SHA384
- PSK_AES128_SHA256
- PSK_AES256_SHA384
- PSK_NULL_SHA256
- PSK_NULL_SHA384
- DHE_PSK_AES128_SHA256
- DHE_PSK_AES256_SHA384
- DHE_PSK_NULL_SHA256
- DHE_PSK_NULL_SHA384
- RSA_PSK_AES128_SHA256
- RSA_PSK_AES256_SHA384
- RSA_PSK_NULL_SHA256
- RSA_PSK_NULL_SHA384
- RSA_CAMELLIA128_SHA256
- DH_DSS_CAMELLIA128_SHA256
- DH_RSA_CAMELLIA128_SHA256
- DHE_DSS_CAMELLIA128_SHA256
- DHE_RSA_CAMELLIA128_SHA256
- DH_ANON_CAMELLIA128_SHA256
- RSA_CAMELLIA256_SHA256
- DH_DSS_CAMELLIA256_SHA256
- DH_RSA_CAMELLIA256_SHA256
- DHE_DSS_CAMELLIA256_SHA256
- DHE_RSA_CAMELLIA256_SHA256
- DH_ANON_CAMELLIA256_SHA256
- ECDHE_ECDSA_CAMELLIA128_SHA256
- ECDHE_ECDSA_CAMELLIA256_SHA384
- ECDH_ECDSA_CAMELLIA128_SHA256
- ECDH_ECDSA_CAMELLIA256_SHA384
- ECDHE_RSA_CAMELLIA128_SHA256
- ECDHE_RSA_CAMELLIA256_SHA384
- ECDH_RSA_CAMELLIA128_SHA256
- ECDH_RSA_CAMELLIA256_SHA384
- RSA_CAMELLIA128_GCM_SHA256
- RSA_CAMELLIA256_GCM_SHA384
- DHE_RSA_CAMELLIA128_GCM_SHA256
- DHE_RSA_CAMELLIA256_GCM_SHA384
- DH_RSA_CAMELLIA128_GCM_SHA256
- DH_RSA_CAMELLIA256_GCM_SHA384
- DHE_DSS_CAMELLIA128_GCM_SHA256
- DHE_DSS_CAMELLIA256_GCM_SHA384
- DH_DSS_CAMELLIA128_GCM_SHA256
- DH_DSS_CAMELLIA256_GCM_SHA384
- DH_anon_CAMELLIA128_GCM_SHA256
- DH_anon_CAMELLIA256_GCM_SHA384
- ECDHE_ECDSA_CAMELLIA128_GCM_SHA256
- ECDHE_ECDSA_CAMELLIA256_GCM_SHA384
- ECDH_ECDSA_CAMELLIA128_GCM_SHA256
- ECDH_ECDSA_CAMELLIA256_GCM_SHA384
- ECDHE_RSA_CAMELLIA128_GCM_SHA256
- ECDHE_RSA_CAMELLIA256_GCM_SHA384
- ECDH_RSA_CAMELLIA128_GCM_SHA256
- ECDH_RSA_CAMELLIA256_GCM_SHA384
- PSK_CAMELLIA128_GCM_SHA256
- PSK_CAMELLIA256_GCM_SHA384
- DHE_PSK_CAMELLIA128_GCM_SHA256
- DHE_PSK_CAMELLIA256_GCM_SHA384
- RSA_PSK_CAMELLIA128_GCM_SHA256
- RSA_PSK_CAMELLIA256_GCM_SHA384
- PSK_CAMELLIA128_SHA256
- PSK_CAMELLIA256_SHA384
- DHE_PSK_CAMELLIA128_SHA256
- DHE_PSK_CAMELLIA256_SHA384
- RSA_PSK_CAMELLIA128_SHA256
- RSA_PSK_CAMELLIA256_SHA384
- ECDHE_PSK_CAMELLIA128_SHA256
- ECDHE_PSK_CAMELLIA256_SHA384
- ECDHE_PSK_RC4_SHA
- ECDHE_PSK_3DES_SHA
- ECDHE_PSK_AES128_SHA
- ECDHE_PSK_AES256_SHA
- ECDHE_PSK_AES128_SHA256
- ECDHE_PSK_AES256_SHA384
- ECDHE_PSK_NULL_SHA
- ECDHE_PSK_NULL_SHA256
- ECDHE_PSK_NULL_SHA384
- ECDHE_RSA_CHACHA20_POLY1305_SHA256
- ECDHE_ECDSA_CHACHA20_POLY1305_SHA256
- DHE_RSA_CHACHA20_POLY1305_SHA256
- PSK_CHACHA20_POLY1305_SHA256
- ECDHE_PSK_CHACHA20_POLY1305_SHA256
- DHE_PSK_CHACHA20_POLY1305_SHA256
- RSA_PSK_CHACHA20_POLY1305_SHA256
- AES128_GCM_SHA256
- AES256_GCM_SHA384
- CHACHA20_POLY1305_SHA256
- AES128_CCM_SHA256
- AES128_CCM8_SHA256
Data Type
String
TLSECCurves Property (HTTPClient Class)
Defines the elliptic curves to enable.
Syntax
QString GetTLSECCurves();
int SetTLSECCurves(QString qsTLSECCurves);
Default Value
""
Remarks
Defines the elliptic curves to enable.
Data Type
String
TLSExtensions Property (HTTPClient Class)
Provides access to TLS extensions.
Syntax
QString GetTLSExtensions();
int SetTLSExtensions(QString qsTLSExtensions);
Default Value
""
Remarks
Provides access to TLS extensions.
Data Type
String
TLSForceResumeIfDestinationChanges Property (HTTPClient Class)
Whether to force TLS session resumption when the destination address changes.
Syntax
bool GetTLSForceResumeIfDestinationChanges();
int SetTLSForceResumeIfDestinationChanges(bool bTLSForceResumeIfDestinationChanges);
Default Value
false
Remarks
Whether to force TLS session resumption when the destination address changes.
Data Type
Boolean
TLSPreSharedIdentity Property (HTTPClient Class)
Defines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated.
Syntax
QString GetTLSPreSharedIdentity();
int SetTLSPreSharedIdentity(QString qsTLSPreSharedIdentity);
Default Value
""
Remarks
Defines the identity used when the PSK (Pre-Shared Key) key-exchange mechanism is negotiated.
This property is not available at design time.
Data Type
String
TLSPreSharedKey Property (HTTPClient Class)
Contains the pre-shared for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16.
Syntax
QString GetTLSPreSharedKey();
int SetTLSPreSharedKey(QString qsTLSPreSharedKey);
Default Value
""
Remarks
Contains the pre-shared for the PSK (Pre-Shared Key) key-exchange mechanism, encoded with base16.
This property is not available at design time.
Data Type
String
TLSPreSharedKeyCiphersuite Property (HTTPClient Class)
Defines the ciphersuite used for PSK (Pre-Shared Key) negotiation.
Syntax
QString GetTLSPreSharedKeyCiphersuite();
int SetTLSPreSharedKeyCiphersuite(QString qsTLSPreSharedKeyCiphersuite);
Default Value
""
Remarks
Defines the ciphersuite used for PSK (Pre-Shared Key) negotiation.
Data Type
String
TLSRenegotiationAttackPreventionMode Property (HTTPClient Class)
Selects renegotiation attack prevention mechanism.
Syntax
int GetTLSRenegotiationAttackPreventionMode();
int SetTLSRenegotiationAttackPreventionMode(int iTLSRenegotiationAttackPreventionMode);
Possible Values
CRAPM_COMPATIBLE(0),
CRAPM_STRICT(1),
CRAPM_AUTO(2)
Default Value
0
Remarks
Selects renegotiation attack prevention mechanism.
The following options are available:
crapmCompatible | 0 | TLS 1.0 and 1.1 compatibility mode (renegotiation indication extension is disabled). |
crapmStrict | 1 | Renegotiation attack prevention is enabled and enforced. |
crapmAuto | 2 | Automatically choose whether to enable or disable renegotiation attack prevention. |
Data Type
Integer
TLSRevocationCheck Property (HTTPClient Class)
Specifies the kind(s) of revocation check to perform.
Syntax
int GetTLSRevocationCheck();
int SetTLSRevocationCheck(int iTLSRevocationCheck);
Possible Values
CRC_NONE(0),
CRC_AUTO(1),
CRC_ALL_CRL(2),
CRC_ALL_OCSP(3),
CRC_ALL_CRLAND_OCSP(4),
CRC_ANY_CRL(5),
CRC_ANY_OCSP(6),
CRC_ANY_CRLOR_OCSP(7),
CRC_ANY_OCSPOR_CRL(8)
Default Value
1
Remarks
Specifies the kind(s) of revocation check to perform.
Revocation checking is necessary to ensure the integrity of the chain and obtain up-to-date certificate validity and trustworthiness information.
crcNone (0) | No revocation checking |
crcAuto (1) | Automatic mode selection. Currently this maps to crcAnyOCSPOrCRL, but it may change in the future. |
crcAllCRL (2) | Check all provided CRL endpoints for all chain certificates. |
crcAllOCSP (3) | Check all provided OCSP endpoints for all chain certificates. |
crcAllCRLAndOCSP (4) | Check all CRL and OCSP endpoints for all chain certificates. |
crcAnyCRL (5) | At least one CRL check for every certificate in the chain must succeed. |
crcAnyOCSP (6) | At least one OCSP check for every certificate in the chain must succeed. |
crcAnyCRLOrOCSP (7) | At least one CRL or OCSP check for every certificate in the chain must succeed. CRL endpoints are checked first. |
crcAnyOCSPOrCRL (8) | At least one CRL or OCSP check for every certificate in the chain must succeed. OCSP endpoints are checked first. |
This setting controls the way the revocation checks are performed. Typically certificates come with two types of revocation information sources: CRL (certificate revocation lists) and OCSP responders. CRLs are static objects periodically published by the CA at some online location. OCSP responders are active online services maintained by the CA that can provide up-to-date information on certificate statuses in near real time.
There are some conceptual differences between the two. CRLs are normally larger in size. Their use involves some latency because there is normally some delay between the time when a certificate was revoked and the time the subsequent CRL mentioning that is published. The benefits of CRL is that the same object can provide statuses for all certificates issued by a particular CA, and that the whole technology is much simpler than OCSP (and thus is supported by more CAs).
This setting lets you adjust the validation course by including or excluding certain types of revocation sources from the validation process. The crcAnyOCSPOrCRL setting (give preference to faster OCSP route and only demand one source to succeed) is a good choice for most of typical validation environments. The "crcAll*" modes are much stricter, and may be used in scenarios where bulletproof validity information is essential.
This property is not available at design time.
Data Type
Integer
TLSSSLOptions Property (HTTPClient Class)
Various SSL (TLS) protocol options, set of cssloExpectShutdownMessage 0x001 Wait for the close-notify message when shutting down the connection cssloOpenSSLDTLSWorkaround 0x002 (DEPRECATED) Use a DTLS version workaround when talking to very old OpenSSL versions cssloDisableKexLengthAlignment 0x004 Do not align the client-side PMS by the RSA modulus size.
Syntax
int GetTLSSSLOptions();
int SetTLSSSLOptions(int iTLSSSLOptions);
Default Value
16
Remarks
Various SSL (TLS) protocol options, set of
cssloExpectShutdownMessage | 0x001 | Wait for the close-notify message when shutting down the connection |
cssloOpenSSLDTLSWorkaround | 0x002 | (DEPRECATED) Use a DTLS version workaround when talking to very old OpenSSL versions |
cssloDisableKexLengthAlignment | 0x004 | Do not align the client-side PMS by the RSA modulus size. It is unlikely that you will ever need to adjust it. |
cssloForceUseOfClientCertHashAlg | 0x008 | Enforce use of client certificate hash algorithm. It is unlikely that you will ever need to adjust it. |
cssloAutoAddServerNameExtension | 0x010 | Automatically add server name extension when known |
cssloAcceptTrustedSRPPrimesOnly | 0x020 | Accept trusted SRP primes only |
cssloDisableSignatureAlgorithmsExtension | 0x040 | Disable (not send) signature algorithms extension. It is unlikely that you will ever need to adjust it. |
cssloIntolerateHigherProtocolVersions | 0x080 | (server option) Do not allow fallback from TLS versions higher than currently enabled |
cssloStickToPrefCertHashAlg | 0x100 | Stick to preferred certificate hash algorithms |
cssloNoImplicitTLS12Fallback | 0x200 | Disable implicit TLS 1.3 to 1.2 fallbacks |
cssloUseHandshakeBatches | 0x400 | Send handshake message as large batches rather than individually |
Data Type
Integer
TLSTLSMode Property (HTTPClient Class)
Specifies the TLS mode to use.
Syntax
int GetTLSTLSMode();
int SetTLSTLSMode(int iTLSTLSMode);
Possible Values
SM_DEFAULT(0),
SM_NO_TLS(1),
SM_EXPLICIT_TLS(2),
SM_IMPLICIT_TLS(3),
SM_MIXED_TLS(4)
Default Value
0
Remarks
Specifies the TLS mode to use.
smDefault | 0 | |
smNoTLS | 1 | Do not use TLS |
smExplicitTLS | 2 | Connect to the server without any encryption and then request an SSL session. |
smImplicitTLS | 3 | Connect to the specified port, and establish the SSL session at once. |
smMixedTLS | 4 | Connect to the specified port, and establish the SSL session at once, allow plain data. |
Data Type
Integer
TLSUseExtendedMasterSecret Property (HTTPClient Class)
Enables Extended Master Secret Extension, as defined in RFC 7627.
Syntax
bool GetTLSUseExtendedMasterSecret();
int SetTLSUseExtendedMasterSecret(bool bTLSUseExtendedMasterSecret);
Default Value
false
Remarks
Enables Extended Master Secret Extension, as defined in RFC 7627.
Data Type
Boolean
TLSUseSessionResumption Property (HTTPClient Class)
Enables or disables TLS session resumption capability.
Syntax
bool GetTLSUseSessionResumption();
int SetTLSUseSessionResumption(bool bTLSUseSessionResumption);
Default Value
false
Remarks
Enables or disables TLS session resumption capability.
Data Type
Boolean
TLSVersions Property (HTTPClient Class)
Th SSL/TLS versions to enable by default.
Syntax
int GetTLSVersions();
int SetTLSVersions(int iTLSVersions);
Default Value
16
Remarks
Th SSL/TLS versions to enable by default.
csbSSL2 | 0x01 | SSL 2 |
csbSSL3 | 0x02 | SSL 3 |
csbTLS1 | 0x04 | TLS 1.0 |
csbTLS11 | 0x08 | TLS 1.1 |
csbTLS12 | 0x10 | TLS 1.2 |
csbTLS13 | 0x20 | TLS 1.3 |
Data Type
Integer
TrustedCertCount Property (HTTPClient Class)
The number of records in the TrustedCert arrays.
Syntax
int GetTrustedCertCount();
int SetTrustedCertCount(int iTrustedCertCount);
Default Value
0
Remarks
This property controls the size of the following arrays:
The array indices start at 0 and end at TrustedCertCount - 1.This property is not available at design time.
Data Type
Integer
TrustedCertBytes Property (HTTPClient Class)
Returns raw certificate data in DER format.
Syntax
QByteArray GetTrustedCertBytes(int iTrustedCertIndex);
Remarks
Returns raw certificate data in DER format.
The TrustedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TrustedCertCount property.
This property is read-only and not available at design time.
Data Type
Byte Array
TrustedCertHandle Property (HTTPClient Class)
Allows to get or set a 'handle', a unique identifier of the underlying property object.
Syntax
qint64 GetTrustedCertHandle(int iTrustedCertIndex);
int SetTrustedCertHandle(int iTrustedCertIndex, qint64 lTrustedCertHandle);
Default Value
0
Remarks
Allows to get or set a 'handle', a unique identifier of the underlying property object. Use this property to assign objects of the same type in a quicker manner, without copying them fieldwise.
When you pass a handle of one object to another, the source object is copied to the destination rather than assigned. It is safe to get rid of the original object
after such operation.
pdfSigner.setSigningCertHandle(certMgr.getCertHandle());
The TrustedCertIndex parameter specifies the index of the item in the array. The size of the array is controlled by the TrustedCertCount property.
This property is not available at design time.
Data Type
Long64
UseDigestAuth Property (HTTPClient Class)
Enables or disables the HTTP Digest authentication.
Syntax
bool GetUseDigestAuth();
int SetUseDigestAuth(bool bUseDigestAuth);
Default Value
false
Remarks
Digest authentication is more advanced than the Basic scheme, as it does not send the username and password in plain text and is immune to replay attacks.
Digest authentication is standardized in RFC 2617.
Data Type
Boolean
UseKerberosAuth Property (HTTPClient Class)
TBD.
Syntax
bool GetUseKerberosAuth();
int SetUseKerberosAuth(bool bUseKerberosAuth);
Default Value
false
Remarks
TBD
Data Type
Boolean
UseNTLMAuth Property (HTTPClient Class)
Enables or disables NTLM authentication.
Syntax
bool GetUseNTLMAuth();
int SetUseNTLMAuth(bool bUseNTLMAuth);
Default Value
false
Remarks
NT LAN Manager (NTLM) authentication relies on Windows credentials to authenticate the user, and requires multiple exchanges between the client and server. Generally it is considered more secure and SSO-friendly than the Digest authentication.
Data Type
Boolean
Config Method (HTTPClient Class)
Sets or retrieves a configuration setting.
Syntax
QString Config(const QString& qsConfigurationString);
Remarks
Config is a generic method available in every class. It is used to set and retrieve configuration settings for the class.
These settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the Config method.
To set a configuration setting named PROPERTY, you must call Config("PROPERTY=VALUE"), where VALUE is the value of the setting expressed as a string. For boolean values, use the strings "True", "False", "0", "1", "Yes", or "No" (case does not matter).
To read (query) the value of a configuration setting, you must call Config("PROPERTY"). The value will be returned as a string.
Error Handling
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
Delete Method (HTTPClient Class)
Sends a DELETE request to the server.
Syntax
int Delete(const QString& qsUrl);
Remarks
Use this method to send a DELETE request to server. In response to this request, the server may (without any guarantees) delete the resource specified in Url. Most of the servers disable DELETE requests.
If this request fails, an exception will be thrown, and the error details published in StatusCode and ReasonPhrase properties.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
DoAction Method (HTTPClient Class)
Performs an additional action.
Syntax
QString DoAction(const QString& qsActionID, const QString& qsActionParams);
Remarks
DoAction is a generic method available in every class. It is used to perform an additional action introduced after the product major release. The list of actions is not fixed, and may be flexibly extended over time.
The unique identifier of the action is provided in ActionID parameter. ActionParams contains a list of parameters for the action in the form of PARAM1=VALUE1;PARAM2=VALUE2;....
Error Handling
This method returns a String value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
Get Method (HTTPClient Class)
Sends a GET request to the server.
Syntax
int Get(const QString& qsUrl);
Remarks
GET is one of the most widely used HTTP requests. The server responds with the content of the resource specified in Url.
If the request is successful, the received content will be available in OutputBytes and OutputString properties. Otherwise an exception will be thrown, and the error details published in StatusCode and ReasonPhrase properties.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
GetBytes Method (HTTPClient Class)
Sends a GET request to the server and returns the output.
Syntax
QByteArray GetBytes(const QString& qsUrl);
Remarks
GET is one of the most widely used HTTP requests. The server responds with the content of the resource specified in Url.
If the request is successful, the method returns the received content. Otherwise, an exception will be thrown, and the error details published in StatusCode and ReasonPhrase properties.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a Byte Array value; after it returns, call the GetLastErrorCode() method to obtain its result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message.
GetFile Method (HTTPClient Class)
Sends a GET request to the server and saves the output to a file.
Syntax
int GetFile(const QString& qsUrl, const QString& qsFilename);
Remarks
GET is one of the most widely used HTTP requests. The server responds with the content of the resource specified in Url.
If the request is successful, the received content will be saved to Filename. Otherwise, an exception will be thrown, and the error details published in StatusCode and ReasonPhrase properties.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Head Method (HTTPClient Class)
Sends a HEAD request to the server.
Syntax
int Head(const QString& qsUrl);
Remarks
HEAD is very similar to GET, with the only difference being that only the headers (but not the content) is returned.
HEAD is often use to retrieve the parameters of the resource, such as its size and modification date. If the request is successful, those details will be available via ResponseParameters and ResponseHeaders properties. Otherwise, an exception will be thrown, and the error details published in StatusCode and ReasonPhrase properties.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Options Method (HTTPClient Class)
Sends an OPTIONS request to the server.
Syntax
int Options(const QString& qsUrl);
Remarks
This request gets various information about the server such as supported HTTP methods. No content is included in the response.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Post Method (HTTPClient Class)
Sends a POST request to the server.
Syntax
int Post(const QString& qsUrl, const QString& qsContent);
Remarks
POST is used to send data to the remote HTTP endpoint/script.
Provide the data you need to send via the Content parameter. If Content is omitted, and only Url is set, the data will be streamed dynamically using the DynamicDataNeeded event.
To post a web form's data (including file attachments to the form) use PostWebForm method.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
PostBytes Method (HTTPClient Class)
Sends a POST request to the server.
Syntax
int PostBytes(const QString& qsUrl, QByteArray qbaContentBytes);
Remarks
POST is used to send data to the remote HTTP endpoint/script.
Provide the data you need to send via the ContentBytes parameter. If content is omitted, and only Url is set, the data will be streamed dynamically using the DynamicDataNeeded event.
To post a web form's data (including file attachments to the form) use PostWebForm method.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
PostFile Method (HTTPClient Class)
Sends a file to the server using a POST request.
Syntax
int PostFile(const QString& qsUrl, const QString& qsFilename);
Remarks
POST is used to send data to the remote HTTP endpoint/script. The content to send will be taken from Filename.
To post a web form's data (including file attachments to the form) use PostWebForm method.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
PostWebForm Method (HTTPClient Class)
Posts a web form data to the server.
Syntax
int PostWebForm(const QString& qsUrl, const QString& qsFields, const QString& qsFileField, const QString& qsFileName, const QString& qsContentType);
Remarks
This variant of the POST method provides means to submit a form (as in a web browser) with an optional file attachment. Fields are expected to contain a list of field names and values in "Name=Value" format separated with EOLs. This list can be empty.
If including a file with your request, use the FileField and FileName properties to specify the file field name and the local filename for the uploaded file. Use ContentType to override the default content type chosen by the client, e.g., "application/x-www-form-urlencoded".
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Put Method (HTTPClient Class)
Sends a PUT request to the server.
Syntax
int Put(const QString& qsUrl, const QString& qsContent);
Remarks
PUT method is used to write data to the server. This method is optional to support and is disabled on most of HTTP servers.
If Content is not present, and only Url is set, the data will be streamed dynamically using the DynamicDataNeeded event. Note that some servers do not support streaming.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
PutBytes Method (HTTPClient Class)
Sends a PUT request to the server.
Syntax
int PutBytes(const QString& qsUrl, QByteArray qbaContentBytes);
Remarks
PUT method is used to write data to the server. This method is optional to support and is disabled on most of HTTP servers.
If ContentBytes is not present, and only Url is set, the data will be streamed dynamically using the DynamicDataNeeded event. Note that some servers do not support streaming.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
PutFile Method (HTTPClient Class)
Sends a file to the server using a PUT request.
Syntax
int PutFile(const QString& qsUrl, const QString& qsFilename);
Remarks
PUT is an alternative to POST and is used to send data to the remote HTTP endpoint/script. Many servers have this method switched off. The content to send will be taken from Filename.
Note that any parameters you intend to pass to this method should be properly encoded before this method is called.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
Trace Method (HTTPClient Class)
Sends a TRACE request to the server.
Syntax
int Trace(const QString& qsUrl);
Remarks
TRACE is a debug command and is typically switched off and/or not supported by web servers.
Error Handling
This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)
CertificateValidate Event (HTTPClient Class)
Fires when the server's TLS certificate has to be validated.
Syntax
class HTTPClientCertificateValidateEventParams { public: const QString &Address(); bool Accept(); void SetAccept(bool bAccept); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void CertificateValidate(HTTPClientCertificateValidateEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireCertificateValidate(HTTPClientCertificateValidateEventParams *e) {...}
Remarks
The class fires this event upon receiving the server's certificate during TLS handshake. The subscriber to this event has to validate the certificate and return its status back to the class using the Accept parameter.
The Address parameter indicates the address of the server the connection is being established to.
This event is fired independently of the AutoValidateCertificates setting. If this setting is false, the event handler (and your code) is responsible for validating the certificate chain and returning the result back to the component through the Accept parameter. Note that setting AutoValidateCertificates to false and not performing any validation inside the handler of this event creates a serious security vulnerability, which can lead to grave consequences.
The exact validation method to use depends on your circumstances, and may range from comparing the certificate to its legit and trusted copy (sometimes called certificate pinning), to fully-fledged chain validation. CertificateValidator component is one of the options to build your chain validation on.
If AutoValidateCertificates is true, the chain has already been validated internally by the component by the time this event fires, and the value of Accept reflects the outcome of that check. You can perform your own, additional validation even when using AutoValidateCertificates mode, and adjust Accept if needed.
Cookie Event (HTTPClient Class)
Fired to report a received cookie.
Syntax
class HTTPClientCookieEventParams { public: const QString &CookieText(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Cookie(HTTPClientCookieEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireCookie(HTTPClientCookieEventParams *e) {...}
Remarks
The CookieText parameter contains the text of the cookie.
DocumentBegin Event (HTTPClient Class)
Marks the start of the incoming HTML document or file.
Syntax
class HTTPClientDocumentBeginEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void DocumentBegin(HTTPClientDocumentBeginEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireDocumentBegin(HTTPClientDocumentBeginEventParams *e) {...}
Remarks
This event is followed by one or more Progress calls. When the document has been received in full, the DocumentEnd event is fired.
DocumentEnd Event (HTTPClient Class)
Marks the successful receipt of the incoming HTML document or file.
Syntax
class HTTPClientDocumentEndEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void DocumentEnd(HTTPClientDocumentEndEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireDocumentEnd(HTTPClientDocumentEndEventParams *e) {...}
Remarks
This event fires when the document has been received in full.
DynamicDataNeeded Event (HTTPClient Class)
Requests a portion of data to be uploaded from the application.
Syntax
class HTTPClientDynamicDataNeededEventParams { public: int BytesNeeded(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void DynamicDataNeeded(HTTPClientDynamicDataNeededEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireDynamicDataNeeded(HTTPClientDynamicDataNeededEventParams *e) {...}
Remarks
If dynamic ('streaming') variants of PUT or POST methods are used, this event is fired periodically to request portions of data to be sent to the server.
When handling this event, assign the next portion of data of BytesNeeded length (or less) to DynamicData. If no more data is available to upload (the whole document has been sent), leave DynamicData empty.
Error Event (HTTPClient Class)
Information about errors during data delivery.
Syntax
class HTTPClientErrorEventParams { public: int ErrorCode(); const QString &Description(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Error(HTTPClientErrorEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireError(HTTPClientErrorEventParams *e) {...}
Remarks
The event is fired in case of exceptional conditions during message processing.
ErrorCode contains an error code and Description contains a textual description of the error. For a list of valid error codes and their descriptions, please refer to the HTTPS section.
ExternalSign Event (HTTPClient Class)
Handles remote or external signing initiated by the SignExternal method or other source.
Syntax
class HTTPClientExternalSignEventParams { public: const QString &OperationId(); const QString &HashAlgorithm(); const QString &Pars(); const QString &Data(); const QString &SignedData(); void SetSignedData(const QString &qsSignedData); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void ExternalSign(HTTPClientExternalSignEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireExternalSign(HTTPClientExternalSignEventParams *e) {...}
Remarks
Assign a handler to this event if you need to delegate a low-level signing operation to an external, remote, or custom signing engine. Depending on the settings, the handler will receive a hashed or unhashed value to be signed.
The event handler must pass the value of Data to the signer, obtain the signature, and pass it back to the component via SignedData parameter.
OperationId provides a comment about the operation and its origin. It depends on the exact component being used, and may be empty. HashAlgorithm specifies the hash algorithm being used for the operation, and Pars contain algorithm-dependent parameters.
The component uses base16 (hex) encoding for Data, SignedData, and Pars parameters. If your signing engine uses a different input and output encoding, you may need to decode and/or encode the data before and/or after the signing.
A sample MD5 hash encoded in base16: a0dee2a0382afbb09120ffa7ccd8a152 - lower case base16 A0DEE2A0382AFBB09120FFA7CCD8A152 - upper case base16
A sample event handler that uses a .NET RSACryptoServiceProvider class may look like the following:
signer.OnExternalSign += (s, e) =>
{
var cert = new X509Certificate2("cert.pfx", "", X509KeyStorageFlags.Exportable);
var key = (RSACryptoServiceProvider)cert.PrivateKey;
var dataToSign = e.Data.FromBase16String();
var signedData = key.SignHash(dataToSign, "2.16.840.1.101.3.4.2.1");
e.SignedData = signedData.ToBase16String();
};
HeadersPrepared Event (HTTPClient Class)
Fires when the request headers have been formed and are about to be sent to the server.
Syntax
class HTTPClientHeadersPreparedEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void HeadersPrepared(HTTPClientHeadersPreparedEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireHeadersPrepared(HTTPClientHeadersPreparedEventParams *e) {...}
Remarks
The prepared headers are available in RequestHeaders property. This event provides you the last chance to review/alter them.
HeadersReceived Event (HTTPClient Class)
Fires when the HTTP response headers have just been received from the server.
Syntax
class HTTPClientHeadersReceivedEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void HeadersReceived(HTTPClientHeadersReceivedEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireHeadersReceived(HTTPClientHeadersReceivedEventParams *e) {...}
Remarks
The received headers are available via the ResponseHeaders property.
Notification Event (HTTPClient Class)
This event notifies the application about an underlying control flow event.
Syntax
class HTTPClientNotificationEventParams { public: const QString &EventID(); const QString &EventParam(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Notification(HTTPClientNotificationEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireNotification(HTTPClientNotificationEventParams *e) {...}
Remarks
The class fires this event to let the application know about some event, occurrence, or milestone in the component. For example, it may fire to report completion of the document processing. The list of events being reported is not fixed, and may be flexibly extended over time.
The unique identifier of the event is provided in EventID parameter. EventParam contains any parameters accompanying the occurrence. Depending on the type of the component, the exact action it is performing, or the document being processed, one or both may be omitted.
Progress Event (HTTPClient Class)
Fires periodically during the data transfer.
Syntax
class HTTPClientProgressEventParams { public: qint64 Total(); qint64 Current(); bool Cancel(); void SetCancel(bool bCancel); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Progress(HTTPClientProgressEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireProgress(HTTPClientProgressEventParams *e) {...}
Remarks
Use this event to check the progress of an upload or download operation. Total indicates the total number of bytes to be transferred; Current specifies how much data has been transferred so far, and Cancel gives you a chance to cancel the operation.
Redirection Event (HTTPClient Class)
Fires when the server suggests a redirect.
Syntax
class HTTPClientRedirectionEventParams { public: const QString &OldURL(); const QString &NewURL(); void SetNewURL(const QString &qsNewURL); bool AllowRedirection(); void SetAllowRedirection(bool bAllowRedirection); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void Redirection(HTTPClientRedirectionEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireRedirection(HTTPClientRedirectionEventParams *e) {...}
Remarks
This event is fired when the server suggests a redirection request (typically via a 301 or 302 response). OldURL indicates the 'from' page, and NewURL indicates the 'to' one. The destination page can be altered by the application if needed. Use AllowRedirection to block undesirable redirects.
Generally, this is a notification event: the component handles redirections automatically. Use the MaxRedirections config property to limit the number of redirection hops.
TLSEstablished Event (HTTPClient Class)
TBD.
Syntax
class HTTPClientTLSEstablishedEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void TLSEstablished(HTTPClientTLSEstablishedEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireTLSEstablished(HTTPClientTLSEstablishedEventParams *e) {...}
Remarks
TBD
TLSHandshake Event (HTTPClient Class)
TBD.
Syntax
class HTTPClientTLSHandshakeEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void TLSHandshake(HTTPClientTLSHandshakeEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireTLSHandshake(HTTPClientTLSHandshakeEventParams *e) {...}
Remarks
TBD
TLSPSK Event (HTTPClient Class)
TBD.
Syntax
class HTTPClientTLSPSKEventParams { public: const QString &Hint(); int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void TLSPSK(HTTPClientTLSPSKEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireTLSPSK(HTTPClientTLSPSKEventParams *e) {...}
Remarks
TBD
TLSShutdown Event (HTTPClient Class)
TBD.
Syntax
class HTTPClientTLSShutdownEventParams { public: int EventRetVal(); void SetEventRetVal(int iRetVal); };
// To handle, connect one or more slots to this signal. void TLSShutdown(HTTPClientTLSShutdownEventParams *e);
// Or, subclass HTTPClient and override this emitter function. virtual int FireTLSShutdown(HTTPClientTLSShutdownEventParams *e) {...}
Remarks
TBD
Configuration Settings (HTTPClient Class)
The class accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the Config method.HTTPClient Configuration Settings | ||||||||||||||||||||||||||||||
CacheStreamOutput: Tells the component whether to cache stream- and file-bound responses in the component.Set this property to true to enable caching of potentially long responses obtained with GetFile and GetStream methods. If the response is cached, it will be available via OutputBytes and OutputString properties after the request is completed, but may occupy extra memory resources. | ||||||||||||||||||||||||||||||
ForceNTLMAuth: Activates and enforces NTLM authentication.Set this property to True to force NTLM (Windows Integrated) authentication. | ||||||||||||||||||||||||||||||
IgnoreSystemTrust:
Whether trusted Windows Certificate Stores should be treated as trusted.Specifies whether, during chain validation, the component should respect
the trust to CA certificates as configured in the operating system.
In Windows this effectively defines whether the component should trust the
certificates residing in the Trusted Root Certification Authorities store.
If IgnoreSystemTrust is True, certificates residing in the trusted root store are treated as if they are known, rather than trusted. Only certificates provided via other means (such as TrustedCertificates property) are considered trusted. |
||||||||||||||||||||||||||||||
IgnoreUnknownTransferEncodings: All incoming responses with unknown transfer encodings are ignored if this property is true.All incoming responses with unknown transfer encodings are ignored if this property is true. | ||||||||||||||||||||||||||||||
MaxRedirections: The maximum number of HTTP redirects.Specifies the maximum number of HTTP redirects. Value 0 prevents any redirections, and -1 allows unlimited redirections. | ||||||||||||||||||||||||||||||
PersistentAuthHeader: Whether to resend NTLM negotiation on every request.Specifies whether to resend NTLM negotiation on every request. | ||||||||||||||||||||||||||||||
RequestCompressionGZip: Ask server to use GZip compression.Ask server to use GZip compression. | ||||||||||||||||||||||||||||||
RequestCompressionLevel: Ask server to use the specified compression level.Ask server to use the specified compression level. | ||||||||||||||||||||||||||||||
SendBufferSize: Size of send buffer in bytes.The size of blocks used to send data to the server. | ||||||||||||||||||||||||||||||
SuppressRedirectionContent: Whether to suppress the redirection content.If this property is set to True, the redirection content will be silently suppressed by the class. Otherwise the message containing a redirection code will be processed as usual, the Redirection event will be fired, and the data will be written to OutputString or OutputBytes. | ||||||||||||||||||||||||||||||
TempPath: Path for storing temporary files.This setting specifies an absolute path to the location on disk where temporary files are stored. | ||||||||||||||||||||||||||||||
TolerateMinorChainIssues: Whether to tolerate minor chain issues.TBD | ||||||||||||||||||||||||||||||
Use100Continue: Whether to use 100-continue for POST and PUT commands.Set this property to True to use the 100-continue approach for POST and PUT commands. In this approach, prior to sending the request body, the client sends a request message asking the server whether it is willing to accept the request body. The request body is sent only if the server accepts it. | ||||||||||||||||||||||||||||||
UseCompression: Whether to use GZip compression.Use this property to tell the server that it can transfer GZIPped data (if the server supports it). | ||||||||||||||||||||||||||||||
UseMicrosoftCTL: Enables or disables automatic use of Microsoft online certificate trust list.Enable this property to make the chain validation module automatically look up missing CA certificates in the public Windows Update repository. | ||||||||||||||||||||||||||||||
UseSystemCertificates: Enables or disables the use of the system certificates.Use this property to tell chain validation module automatically look up missing CA certificates in the system certificates. In many cases it is beneficial to switch this property on, as the operating system certificate configuration provides a representative trust framework. | ||||||||||||||||||||||||||||||
Base Configuration Settings | ||||||||||||||||||||||||||||||
CheckKeyIntegrityBeforeUse:
Enables or disable private key integrity check before use.This global property enables or disables private key material check before each signing operation. This slows down performance a bit,
but prevents a selection of attacks on RSA keys where keys with unknown origins are used.
You can switch this property off to improve performance if your project only uses known, good private keys. |
||||||||||||||||||||||||||||||
CookieCaching:
Specifies whether a cookie cache should be used for HTTP(S) transports.Set this property to enable or disable cookies caching for the class.
Supported values are:
|
||||||||||||||||||||||||||||||
Cookies: Gets or sets local cookies for the class (supported for HTTPClient, RESTClient and SOAPClient only).Use this property to get cookies from the internal cookie storage of the class and/or restore them back between application sessions. | ||||||||||||||||||||||||||||||
DefDeriveKeyIterations: Specifies the default key derivation algorithm iteration count.This global property sets the default number of iterations for all supported key derivation algorithms. Note that you can provide the required number of iterations by using properties of the relevant key generation component; this global setting is used in scenarios where specific iteration count is not or cannot be provided. | ||||||||||||||||||||||||||||||
EnableClientSideSSLFFDHE:
Enables or disables finite field DHE key exchange support in TLS clients.This global property enables or disables support for finite field DHE key exchange methods in TLS clients. FF DHE is a slower
algorithm if compared to EC DHE; enabling it may result in slower connections.
This setting only applies to sessions negotiated with TLS version 1.3. |
||||||||||||||||||||||||||||||
GlobalCookies: Gets or sets global cookies for all the HTTP transports.Use this property to get cookies from the GLOBAL cookie storage or restore them back between application sessions. These cookies will be used by all the classes that have its CookieCaching property set to "global". | ||||||||||||||||||||||||||||||
HttpUserAgent: Specifies the user agent name to be used by all HTTP clients.This global setting defines the User-Agent field of the HTTP request provides information about the software that initiates the request. This value will be used by all the HTTP clients including the ones used internally in other classes. | ||||||||||||||||||||||||||||||
LogDestination:
Specifies the debug log destination.Contains a comma-separated list of values that specifies where debug log should be dumped.
Supported values are:
|
||||||||||||||||||||||||||||||
LogDetails:
Specifies the debug log details to dump.Contains a comma-separated list of values that specifies which debug log details to dump.
Supported values are:
|
||||||||||||||||||||||||||||||
LogFile: Specifies the debug log filename.Use this property to provide a path to the log file. | ||||||||||||||||||||||||||||||
LogFilters:
Specifies the debug log filters.Contains a comma-separated list of value pairs ("name:value") that describe filters.
Supported filter names are:
|
||||||||||||||||||||||||||||||
LogFlushMode:
Specifies the log flush mode.Use this property to set the log flush mode. The following values are defined:
|
||||||||||||||||||||||||||||||
LogLevel:
Specifies the debug log level.Use this property to provide the desired debug log level.
Supported values are:
|
||||||||||||||||||||||||||||||
LogMaxEventCount:
Specifies the maximum number of events to cache before further action is taken.Use this property to specify the log event number threshold. This threshold may have different effects,
depending on the rotation setting and/or the flush mode.
The default value of this setting is 100. |
||||||||||||||||||||||||||||||
LogRotationMode:
Specifies the log rotation mode.Use this property to set the log rotation mode. The following values are defined:
|
||||||||||||||||||||||||||||||
MaxASN1BufferLength: Specifies the maximal allowed length for ASN.1 primitive tag data.This global property limits the maximal allowed length for ASN.1 tag data for non-content-carrying structures, such as certificates, CRLs, or timestamps. It does not affect structures that can carry content, such as CMS/CAdES messages. This is a security property aiming at preventing DoS attacks. | ||||||||||||||||||||||||||||||
MaxASN1TreeDepth: Specifies the maximal depth for processed ASN.1 trees.This global property limits the maximal depth of ASN.1 trees that the component can handle without throwing an error. This is a security property aiming at preventing DoS attacks. | ||||||||||||||||||||||||||||||
OCSPHashAlgorithm: Specifies the hash algorithm to be used to identify certificates in OCSP requests.This global setting defines the hash algorithm to use in OCSP requests during chain validation. Some OCSP responders can only use older algorithms, in which case setting this property to SHA1 may be helpful. | ||||||||||||||||||||||||||||||
Tag: Allows to store any custom data.Use this config property to store any custom data. | ||||||||||||||||||||||||||||||
UseSharedSystemStorages: Specifies whether the validation engine should use a global per-process copy of the system certificate stores.Set this global property to false to make each validation run use its own copy of system certificate stores. | ||||||||||||||||||||||||||||||
UseSystemOAEPAndPSS:
Enforces or disables the use of system-driven RSA OAEP and PSS computations.This global setting defines who is responsible for performing RSA-OAEP and RSA-PSS computations where the private key is stored in a Windows system store and is exportable.
If set to true, SBB will delegate the computations to Windows via a CryptoAPI call. Otherwise, it will export the key material and perform the computations
using its own OAEP/PSS implementation.
This setting only applies to certificates originating from a Windows system store. |
||||||||||||||||||||||||||||||
UseSystemRandom: Enables or disables the use of the OS PRNG.Use this global property to enable or disable the use of operating system-driven pseudorandom number generation. |
Trappable Errors (HTTPClient Class)
HTTPClient Errors
1048577 Invalid parameter value (SB_ERROR_INVALID_PARAMETER) | |
1048578 Class is configured incorrectly (SB_ERROR_INVALID_SETUP) | |
1048579 Operation cannot be executed in the current state (SB_ERROR_INVALID_STATE) | |
1048580 Attempt to set an invalid value to a property (SB_ERROR_INVALID_VALUE) | |
1048581 Certificate does not have its private key loaded (SB_ERROR_NO_PRIVATE_KEY) | |
1048581 Cancelled by the user (SB_ERROR_CANCELLED_BY_USER) | |
19922945 Unsupported keep-alive policy (SB_ERROR_HTTP_UNSUPPORTED_KEEPALIVEPOLICY) |