[API categories](API-categories.md) | [API index](API-index.md) # WebRequestClient (interface) See [WebRequest](WebRequest.md).CreateWebRequest(). You have to keep a strong reference to the [WebRequest](WebRequest.md) object during the request, otherwise it gets destroyed and the [WebRequestClient](WebRequestClient.md) callbacks won't get called. Table of contents: * [Callbacks](#callbacks) * [OnUploadProgress](#onuploadprogress) * [OnDownloadProgress](#ondownloadprogress) * [OnDownloadData](#ondownloaddata) * [OnRequestComplete](#onrequestcomplete) * [GetAuthCredentials](#getauthcredentials) ## Callbacks The methods of this class will be called on the same thread that created the request unless otherwise documented. ### OnUploadProgress | Parameter | Type | | --- | --- | | webRequest | [WebRequest](WebRequest.md) | | current | long | | total | long | | __Return__ | void | Notifies the client of upload progress. |current| denotes the number of bytes sent so far and |total| is the total size of uploading data (or -1 if chunked upload is enabled). This method will only be called if the `ReportUploadProgress` flag is set on the request (see [Request](Request.md).GetFlags() and SetFlags()) ### OnDownloadProgress | Parameter | Type | | --- | --- | | webRequest | [WebRequest](WebRequest.md) | | current | long | | total | long | | __Return__ | void | Notifies the client of download progress. |current| denotes the number of bytes received up to the call and |total| is the expected total size of the response (or -1 if not determined). ### OnDownloadData | Parameter | Type | | --- | --- | | webRequest | [WebRequest](WebRequest.md) | | data | string | | __Return__ | void | Called when some part of the response is read. |data| contains the current bytes received since the last call. This method will not be called if the `NoDownloadData` flag is set on the request (see [Request](Request.md).GetFlags() and SetFlags()). ### OnRequestComplete | Parameter | Type | | --- | --- | | webRequest | [WebRequest](WebRequest.md) | | __Return__ | void | Notifies the client that the request has completed. Use the [WebRequest](WebRequest.md).GetRequestStatus() method to determine if the request was successful or not. ### GetAuthCredentials | Parameter | Type | | --- | --- | | isProxy | bool | | host | string | | port | int | | realm | string | | scheme | string | | callback | [Callback](Callback.md) | | __Return__ | bool | Called on the IO thread when the browser needs credentials from the user. |isProxy| indicates whether the host is a proxy server. |host| contains the hostname and |port| contains the port number. Return true to continue the request and call [Callback](Callback.md).Continue() when the authentication information is available. Return false to cancel the request. This method will only be called for requests initiated from the browser process.