docs.unity3d.com
    Show / Hide Table of Contents

    Class HttpClientExtensions

    Helper methods for IHttpClient.

    Inheritance
    Object
    HttpClientExtensions
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Unity.Cloud.Common
    Syntax
    public static class HttpClientExtensions

    Properties

    HttpMethodPatch

    Declaration
    public static HttpMethod HttpMethodPatch { get; }
    Property Value
    Type Description
    HttpMethod

    Methods

    CreateHttpRequestMessage(HttpMethod, Uri)

    Creates an HttpRequestMessage from an HttpMethod and a Uri.

    Declaration
    public static HttpRequestMessage CreateHttpRequestMessage(HttpMethod httpMethod, Uri uri)
    Parameters
    Type Name Description
    HttpMethod httpMethod

    The HTTP method.

    Uri uri

    The Uri to request.

    Returns
    Type Description
    HttpRequestMessage

    The created HttpRequestMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the URI is null.

    CreateUri(String)

    Creates a Uri from a specified String.

    Declaration
    public static Uri CreateUri(string uri)
    Parameters
    Type Name Description
    String uri

    The String to convert.

    Returns
    Type Description
    Uri

    The created Uri.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when an unhandled exception is thrown constructing the URI.

    DeleteAsync(IHttpClient, String, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous DELETE request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> DeleteAsync(this IHttpClient httpClient, string requestUri, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    String requestUri

    The uri for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    DeleteAsync(IHttpClient, String, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous DELETE request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> DeleteAsync(this IHttpClient httpClient, string requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    String requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    DeleteAsync(IHttpClient, Uri, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous DELETE request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> DeleteAsync(this IHttpClient httpClient, Uri requestUri, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    Uri requestUri

    The uri for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the requestUri is null.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    DeleteAsync(IHttpClient, Uri, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous DELETE request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> DeleteAsync(this IHttpClient httpClient, Uri requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    Uri requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the requestUri is null.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    GetAsync(IHttpClient, String, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous GET request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> GetAsync(this IHttpClient httpClient, string requestUri, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    String requestUri

    The uri for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    GetAsync(IHttpClient, Uri, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous GET request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> GetAsync(this IHttpClient httpClient, Uri requestUri, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    Uri requestUri

    The uri for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the requestUri is null.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    PatchAsync(IHttpClient, String, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous PATCH request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> PatchAsync(this IHttpClient httpClient, string requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    String requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    PatchAsync(IHttpClient, Uri, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous PATCH request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> PatchAsync(this IHttpClient httpClient, Uri requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    Uri requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the requestUri is null.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    PostAsync(IHttpClient, String, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous POST request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> PostAsync(this IHttpClient httpClient, string requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    String requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    PostAsync(IHttpClient, Uri, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous POST request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> PostAsync(this IHttpClient httpClient, Uri requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    Uri requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the requestUri is null.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    PutAsync(IHttpClient, String, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous PUT request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> PutAsync(this IHttpClient httpClient, string requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    String requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    PutAsync(IHttpClient, Uri, HttpContent, HttpCompletionOption, IProgress<HttpProgress>, CancellationToken)

    Sends an asynchronous PUT request to the specified Uri.

    Declaration
    public static Task<HttpResponseMessage> PutAsync(this IHttpClient httpClient, Uri requestUri, HttpContent content, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead, IProgress<HttpProgress> progress = null, CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    IHttpClient httpClient

    The HTTP client.

    Uri requestUri

    The uri for the request.

    HttpContent content

    The HTTP content for the request.

    HttpCompletionOption completionOption

    When the operation should complete.

    IProgress<HttpProgress> progress

    The progress provider.

    CancellationToken cancellationToken

    The cancellation token.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown when the requestUri is null.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    SendAsync(IHttpClient, HttpRequestMessage)

    Sends an asynchronous HTTP request.

    Declaration
    public static Task<HttpResponseMessage> SendAsync(this IHttpClient httpClient, HttpRequestMessage request)
    Parameters
    Type Name Description
    IHttpClient httpClient
    HttpRequestMessage request

    The request to be sent.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    SendAsync(IHttpClient, HttpRequestMessage, HttpCompletionOption)

    Sends an asynchronous HTTP request.

    Declaration
    public static Task<HttpResponseMessage> SendAsync(this IHttpClient httpClient, HttpRequestMessage request, HttpCompletionOption completionOption)
    Parameters
    Type Name Description
    IHttpClient httpClient
    HttpRequestMessage request

    The request to be sent.

    HttpCompletionOption completionOption

    When the operation should complete.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    SendAsync(IHttpClient, HttpRequestMessage, HttpCompletionOption, CancellationToken)

    Sends an asynchronous HTTP request.

    Declaration
    public static Task<HttpResponseMessage> SendAsync(this IHttpClient httpClient, HttpRequestMessage request, HttpCompletionOption completionOption, CancellationToken cancellationToken)
    Parameters
    Type Name Description
    IHttpClient httpClient
    HttpRequestMessage request

    The request to be sent.

    HttpCompletionOption completionOption

    When the operation should complete.

    CancellationToken cancellationToken

    Cancellation token that will try to cancel the operation.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    SendAsync(IHttpClient, HttpRequestMessage, CancellationToken)

    Sends an asynchronous HTTP request.

    Declaration
    public static Task<HttpResponseMessage> SendAsync(this IHttpClient httpClient, HttpRequestMessage request, CancellationToken cancellationToken)
    Parameters
    Type Name Description
    IHttpClient httpClient
    HttpRequestMessage request

    The request to be sent.

    CancellationToken cancellationToken

    Cancellation token that will try to cancel the operation.

    Returns
    Type Description
    Task<HttpResponseMessage>

    An HttpResponseMessage.

    Exceptions
    Type Condition
    ArgumentException

    Thrown when the requestUri is invalid.

    HttpRequestException

    Thrown when an HTTP response can't be obtained from the server.

    OperationCanceledException

    Thrown when the request is cancelled by a cancellation token.

    TimeoutException

    Thrown when the request failed due to timeout.

    WithApiSourceHeaders(IHttpClient, String, String)

    Creates an instance of Unity.Cloud.Common.HttpClientHeaderModifier which adds the API source headers to each request.

    Declaration
    public static IHttpClient WithApiSourceHeaders(this IHttpClient baseHttpClient, string name, string version)
    Parameters
    Type Name Description
    IHttpClient baseHttpClient

    The client for which to modify the request headers.

    String name

    The API source name.

    String version

    The API source version.

    Returns
    Type Description
    IHttpClient

    The created Unity.Cloud.Common.HttpClientHeaderModifier.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown is name or version are null or empty.

    WithApiSourceHeadersFromAssembly(IHttpClient, Assembly)

    Creates an instance of Unity.Cloud.Common.HttpClientHeaderModifier which adds the API source headers to each request. The source values are retrieved from the ApiSourceVersionAttribute which must be defined in the calling Assembly.

    Declaration
    public static IHttpClient WithApiSourceHeadersFromAssembly(this IHttpClient baseHttpClient, Assembly assembly)
    Parameters
    Type Name Description
    IHttpClient baseHttpClient

    The client for which to modify the request headers.

    Assembly assembly

    The target assembly.

    Returns
    Type Description
    IHttpClient

    The created Unity.Cloud.Common.HttpClientHeaderModifier.

    Remarks

    An instance of the ApiSourceVersionAttribute must be defined at the assembly-level in the calling Assembly in order for the correct API source values to be added as a header.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if assembly is null or the name or version defined in the retrieved ApiSourceVersionAttribute are null or white space.

    InvalidOperationException

    Thrown if ApiSourceVersionAttribute does not exist or is not initialized in the calling assembly.

    InvalidArgumentException

    Thrown if ApiSourceVersionAttribute is initialized with null or empty values in the calling assembly.

    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023