Client: Client

Isolated

The HTTP client provides the capability for initiating contact with a remote HTTP service. The API it provides includes the 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

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

post

function post(string path, RequestMessage message, map<string | string[ ]>? headers, string? mediaType, 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 <>)
  • 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, map<string | string[ ]>? headers, string? mediaType, 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 <>)
  • 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, map<string | string[ ]>? headers, string? mediaType, 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 <>)
  • 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, map<string | string[ ]>? headers, string? mediaType, 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 <>)
  • 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 <>)
  • 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 <>)
  • 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, map<string | string[ ]>? headers, string? mediaType, 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 <>)
  • 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 <>)
  • 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