Skip to content

nixjs/axios-client

Repository files navigation

@nixjs23n6/axios-client

A small wrapper for integrating Axios to Typescript

Quick Setup

Install

Install these dependencies:

yarn add @nixjs23n6/axios-client

Setup & Usage

import { HttpClient, Types } from '@nixjs23n6/axios-client' class Client extends HttpClient { /**  * The Singleton's constructor should always be private to prevent direct  * construction calls with the `new` operator.  */ private constructor(args: Types.HttpClientArgs) { super(args) } /**  * The static method that controls the access to the singleton instance.  *  * This implementation let you subclass the Singleton class while keeping  * just one instance of each subclass around.  */ public static get instance(): HttpClient { if (HttpClient._instance) { return this._instance } this._instance = new HttpClient({ baseURL: "https://api.example.nixjs" }) if (this._instance && this._instance.client) { // Config interceptors this._instance.client.interceptors.request.use( (config) => config, (error) => { return Promise.resolve(error) } ) this._instance.client.interceptors.response.use( (response) => { // Return a successful response back to the calling service return response }, (error) => { const { response } = error return Promise.resolve(response) } ) } return this._instance } } const client = Client.instance; client.fetch<any>('/login', 'POST', { username: "nghinv", password: 'Abc1@34' }).then(console.log)

About

A small wrapper for integrating Axios to Typescript

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published