Client: Client

The HTTP client provides the capability for initiating contact with a remote HTTP service. The API it provides includes functions for the standard HTTP methods, forwarding a received request and sending requests using custom HTTP verbs.

Constructor

Gets invoked to initialize the client. During initialization, the configurations provided through the config record is used to determine which type of additional behaviours are added to the endpoint (e.g., caching, security, circuit breaking).

init (string url, ClientConfiguration? config)
  • url string
  • URL of the target service

Remote Methods

post

The Client.post() function can be used to send HTTP POST requests to HTTP endpoints.

put

The Client.put() function can be used to send HTTP PUT requests to HTTP endpoints.

patch

The Client.patch() function can be used to send HTTP PATCH requests to HTTP endpoints.

delete

The Client.delete() function can be used to send HTTP DELETE requests to HTTP endpoints.

head

The Client.head() function can be used to send HTTP HEAD requests to HTTP endpoints.

get

The Client.get() function can be used to send HTTP GET requests to HTTP endpoints.

options

The Client.options() function can be used to send HTTP OPTIONS requests to HTTP endpoints.

execute

Invokes an HTTP call with the specified HTTP verb.

forward

The Client.forward() function can be used to invoke an HTTP call with inbound request's HTTP verb

submit

Submits an HTTP request to a service with the specified HTTP verb.

getResponse

This just pass the request to actual network call.

hasPromise

This just pass the request to actual network call.

getNextPromise

This just pass the request to actual network call.

getPromisedResponse

Passes the request to an actual network call.

rejectPromise

This just pass the request to actual network call.

Methods

getCookieStore

Retrieves the cookie store of the client.

Fields

  • Fields Included from *ClientObject
    • url string
    • Target service url

    • config ClientConfiguration(default {})
    • The configurations associated with the client

    • httpClient HttpClient
    • Chain of different HTTP clients which provides the capability for initiating contact with a remote HTTP service in resilient manner

    • cookieStore CookieStore?(default ())
    • Stores the cookies of the client

    post

    function post(string path, RequestMessage message, string? mediaType, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.post() function can be used to send HTTP POST requests to HTTP endpoints.

    Parameters

    • message RequestMessage
    • An HTTP outbound request or any allowed payload

    • mediaType string? (default ())
    • The MIME type header of the request entity

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    put

    function put(string path, RequestMessage message, string? mediaType, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.put() function can be used to send HTTP PUT requests to HTTP endpoints.

    Parameters

    • message RequestMessage
    • An HTTP outbound request or any allowed payload

    • mediaType string? (default ())
    • The MIME type header of the request entity

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    patch

    function patch(string path, RequestMessage message, string? mediaType, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.patch() function can be used to send HTTP PATCH requests to HTTP endpoints.

    Parameters

    • message RequestMessage
    • An HTTP outbound request or any allowed payload

    • mediaType string? (default ())
    • The MIME type header of the request entity

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    delete

    function delete(string path, RequestMessage message, string? mediaType, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.delete() function can be used to send HTTP DELETE requests to HTTP endpoints.

    Parameters

    • message RequestMessage (default ())
    • An optional HTTP outbound request message or any allowed payload

    • mediaType string? (default ())
    • The MIME type header of the request entity

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    function head(string path, map<string | string[ ]>? headers) returns Response | ClientError
    Isolated Function
    Remote Function

    The Client.head() function can be used to send HTTP HEAD requests to HTTP endpoints.

    Parameters

    Return Type

    (Response | ClientError)

    The response or an http:ClientError if failed to establish the communication with the upstream server

    get

    function get(string path, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.get() function can be used to send HTTP GET requests to HTTP endpoints.

    Parameters

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    options

    function options(string path, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.options() function can be used to send HTTP OPTIONS requests to HTTP endpoints.

    Parameters

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    execute

    function execute(string httpVerb, string path, RequestMessage message, string? mediaType, map<string | string[ ]>? headers, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    Invokes an HTTP call with the specified HTTP verb.

    Parameters

    • httpVerb string
    • HTTP verb value

    • message RequestMessage
    • An HTTP outbound request or any allowed payload

    • mediaType string? (default ())
    • The MIME type header of the request entity

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    forward

    function forward(string path, Request request, TargetType targetType) returns targetType | ClientError
    Isolated Function
    Remote Function

    The Client.forward() function can be used to invoke an HTTP call with inbound request's HTTP verb

    Parameters

    • request Request
    • An HTTP inbound request message

    • targetType TargetType (default Response)
    • HTTP response or the payload type (string, xml, json, byte[],record {| anydata...; |}, or record {| anydata...; |}[]), which is expected to be returned after data binding

    Return Type

    (targetType | ClientError)

    The response or the payload (if the targetType is configured) or an http:ClientError if failed to establish the communication with the upstream server or a data binding failure

    submit

    function submit(string httpVerb, string path, RequestMessage message) returns HttpFuture | ClientError
    Isolated Function
    Remote Function

    Submits an HTTP request to a service with the specified HTTP verb. The Client->submit() function does not give out a http:Response as the result. Rather it returns an http:HttpFuture which can be used to do further interactions with the endpoint.

    Parameters

    • httpVerb string
    • The HTTP verb value

    • message RequestMessage
    • An HTTP outbound request or any allowed payload

    Return Type

    (HttpFuture | ClientError)

    An http:HttpFuture that represents an asynchronous service invocation or else an http:ClientError if the submission fails

    getResponse

    function getResponse(HttpFuture httpFuture) returns Response | ClientError
    Isolated Function
    Remote Function

    This just pass the request to actual network call.

    Parameters

    • httpFuture HttpFuture
    • The http:HttpFuture related to a previous asynchronous invocation

    Return Type

    (Response | ClientError)

    An http:Response message or else an http: ClientError if the invocation fails

    hasPromise

    function hasPromise(HttpFuture httpFuture) returns boolean
    Isolated Function
    Remote Function

    This just pass the request to actual network call.

    Parameters

    • httpFuture HttpFuture
    • The http:HttpFuture relates to a previous asynchronous invocation

    Return Type

    (boolean)

    A boolean, which represents whether an http:PushPromise exists

    getNextPromise

    function getNextPromise(HttpFuture httpFuture) returns PushPromise | ClientError
    Isolated Function
    Remote Function

    This just pass the request to actual network call.

    Parameters

    • httpFuture HttpFuture
    • The http:HttpFuture related to a previous asynchronous invocation

    Return Type

    (PushPromise | ClientError)

    An http:PushPromise message or else an http:ClientError if the invocation fails

    getPromisedResponse

    function getPromisedResponse(PushPromise promise) returns Response | ClientError
    Isolated Function
    Remote Function

    Passes the request to an actual network call.

    Parameters

    Return Type

    (Response | ClientError)

    A promised http:Response message or else an http:ClientError if the invocation fails

    rejectPromise

    function rejectPromise(PushPromise promise)
    Isolated Function
    Remote Function

    This just pass the request to actual network call.

    Parameters

    getCookieStore

    function getCookieStore() returns CookieStore?
    Isolated Function

    Retrieves the cookie store of the client.

    Return Type

    (CookieStore?)

    The cookie store related to the client