HTTP Client
TS SDK HTTP Client
Default HTTP Client
The SDK uses @endless-labs/endless-client library with the ability to modify some request configurations like AUTH_TOKEN, HEADERS, etc.
The @endless-labs/endless-client package supports http2
protocol and implements 2 clients environment based:
axios - To use in a browser environment (in a browser env it is up to the browser and the server to negotiate http2 connection)
got - To use in a node environment (to support http2 in node environment, still the server must support http2 also)
Custom HTTP Client
Sometimes developers want to set custom configurations or use a specific http client for queries.
The SDK supports a custom client configuration as a function with this signature:
<Req, Res>(requestOptions: ClientRequest<Req>): Promise<ClientResponse<Res>>
:::note Both ClientRequest
and ClientResponse
are types defined in the SDK. :::
async function customClient<Req, Res>(requestOptions: ClientRequest<Req>): Promise<ClientResponse<Res>> {
....
}
const config = new EndlessConfig({ client: { provider: customClient } });
const endless = new Endless(config);
Last updated