Legacy Documentation: Version 2017.2 (Go to current version)
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

UnityWebRequest

class in UnityEngine.Networking

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

The UnityWebRequest object is used to communicate with web servers.

UnityWebRequests handle the flow of HTTP communication with web servers. Other objects - specifically DownloadHandler and UploadHandler - govern downloading and uploading data, respectively.

A set of static functions are provided for convenience; these return UnityWebRequest objects properly configured for many common use cases. See: Get, Post, Put, GetTexture.

Note: Most properties on the UnityWebRequest object cannot be altered once the UnityWebRequest has begun communicating with a remote server by calling the Send method.

Static Properties

kHttpVerbCREATEThe string "CREATE", commonly used as the verb for an HTTP CREATE request.
kHttpVerbDELETEThe string "DELETE", commonly used as the verb for an HTTP DELETE request.
kHttpVerbGETThe string "GET", commonly used as the verb for an HTTP GET request.
kHttpVerbHEADThe string "HEAD", commonly used as the verb for an HTTP HEAD request.
kHttpVerbPOSTThe string "POST", commonly used as the verb for an HTTP POST request.
kHttpVerbPUTThe string "PUT", commonly used as the verb for an HTTP PUT request.

Properties

chunkedTransferIndicates whether the UnityWebRequest system should employ the HTTP/1.1 chunked-transfer encoding method.
disposeDownloadHandlerOnDisposeIf true, any DownloadHandler attached to this UnityWebRequest will have DownloadHandler.Dispose called automatically when UnityWebRequest.Dispose is called.
disposeUploadHandlerOnDisposeIf true, any UploadHandler attached to this UnityWebRequest will have UploadHandler.Dispose called automatically when UnityWebRequest.Dispose is called.
downloadedBytesReturns the number of bytes of body data the system has downloaded from the remote server. (Read Only)
downloadHandlerHolds a reference to a DownloadHandler object, which manages body data received from the remote server by this UnityWebRequest.
downloadProgressReturns a floating-point value between 0.0 and 1.0, indicating the progress of downloading body data from the server. (Read Only)
errorA human-readable string describing any system errors encountered by this UnityWebRequest object while handling HTTP requests or responses. (Read Only)
isDoneReturns true after the UnityWebRequest has finished communicating with the remote server. (Read Only)
isHttpErrorReturns true after this UnityWebRequest receives an HTTP response code indicating an error. (Read Only)
isModifiableReturns true while a UnityWebRequest’s configuration properties can be altered. (Read Only)
isNetworkErrorReturns true after this UnityWebRequest encounters a system error. (Read Only)
methodDefines the HTTP verb used by this UnityWebRequest, such as GET or POST.
redirectLimitIndicates the number of redirects which this UnityWebRequest will follow before halting with a “Redirect Limit Exceeded” system error.
responseCodeThe numeric HTTP response code returned by the server, such as 200, 404 or 500. (Read Only)
timeoutSets UnityWebRequest to attempt to abort after the number of seconds in timeout have passed.
uploadedBytesReturns the number of bytes of body data the system has uploaded to the remote server. (Read Only)
uploadHandlerHolds a reference to the UploadHandler object which manages body data to be uploaded to the remote server.
uploadProgressReturns a floating-point value between 0.0 and 1.0, indicating the progress of uploading body data to the server.
urlDefines the target URL for the UnityWebRequest to communicate with.
useHttpContinueDetermines whether this UnityWebRequest will include Expect: 100-Continue in its outgoing request headers. (Default: true).

Constructors

UnityWebRequestCreates a UnityWebRequest with the default options and no attached DownloadHandler or UploadHandler. Default method is GET.

Public Methods

AbortIf in progress, halts the UnityWebRequest as soon as possible.
DisposeSignals that this [UnityWebRequest] is no longer being used, and should clean up any resources it is using.
GetRequestHeaderRetrieves the value of a custom request header.
GetResponseHeaderRetrieves the value of a response header from the latest HTTP response received.
GetResponseHeadersRetrieves a dictionary containing all the response headers received by this UnityWebRequest in the latest HTTP response.
SendWebRequestBegin communicating with the remote server.After calling this method, the UnityWebRequest will perform DNS resolution (if necessary), transmit an HTTP request to the remote server at the target URL and process the server’s response.This method can only be called once on any given UnityWebRequest object. Once this method is called, you cannot change any of the UnityWebRequest’s properties.This method returns a WebRequestAsyncOperation object. Yielding the WebRequestAsyncOperation inside a coroutine will cause the coroutine to pause until the UnityWebRequest encounters a system error or finishes communicating.
SetRequestHeaderSet a HTTP request header to a custom value.

Static Methods

DeleteCreates a UnityWebRequest configured for HTTP DELETE.
GenerateBoundaryGenerate a random 40-byte array for use as a multipart form boundary.
GetCreates a UnityWebRequest configured for HTTP GET.
GetAssetBundleCreates a UnityWebRequest optimized for downloading a Unity Asset Bundle via HTTP GET.
HeadCreates a UnityWebRequest configured to send a HTTP HEAD request.
PostCreate a UnityWebRequest configured to send form data to a server via HTTP POST.
PutCreate a UnityWebRequest configured to upload raw data to a remote server via HTTP PUT.
SerializeFormSectionsConverts a List of IMultipartFormSection objects into a byte array containing raw multipart form data.
SerializeSimpleFormSerialize a dictionary of strings into a byte array containing URL-encoded UTF8 characters.

Did you find this page useful? Please give it a rating: