1.1.13 • Published 1 year ago

@architecturex/utils.api v1.1.13

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

@architecturex/utils.api

api

This module provides a set of utility functions to simplify and standardize API calls using the Fetch API.

Installation

npm install @architecturex/utils.api

Methods

  • api.get(url: string, headers?: RequestHeaders): Performs a GET request.
  • api.post(url: string, data: RequestBody, headers?: RequestHeaders): Performs a POST request.
  • api.put(url: string, data: RequestBody, headers?: RequestHeaders): Performs a PUT request.
  • api.delete(url: string, headers?: RequestHeaders): Performs a DELETE request.
  • api.handleError(response: Response): Handles errors based on the response status.
  • api.handleResponse(args: Args): Returns a standardized response object.

Types

  • RequestHeaders: Object where the key is the header name and the value is the header value.
  • RequestBody: Object representing any JSON serializable data.
  • Args: Parameters for handleResponse including data, error, cache, and status.

Usage

import api from '@architecturex/utils.api'

// Performing a GET request
async function fetchData() {
  try {
    const data = await api.get('https://api.example.com/data')
    console.log(data)
  } catch (error) {
    console.error('Error fetching data:', error)
  }
}

// Performing a POST request
async function postData(newData) {
  try {
    const response = await api.post('https://api.example.com/data', newData)
    console.log(response)
  } catch (error) {
    console.error('Error posting data:', error)
  }
}

Response Handling

Both the handleError and handleResponse methods are provided to assist with error handling. handleError interprets the status code of the response and logs an appropriate error message. The handleResponse method, on the other hand, creates a standardized response object that can help streamline the handling of both successful and erroneous API calls in your application.

Contribution

Feel free to suggest improvements, report issues, or contribute to enhancing this utility. Your feedback and contributions are welcome!

1.1.12

1 year ago

1.1.13

1 year ago

1.1.9

1 year ago

1.1.8

1 year ago

1.1.11

1 year ago

1.1.10

1 year ago

1.1.7

1 year ago

1.1.1

1 year ago

1.1.0

1 year ago

1.1.6

1 year ago

1.1.5

1 year ago

1.1.4

1 year ago

1.1.3

1 year ago

1.1.2

1 year ago

1.0.19

1 year ago

1.0.20

1 year ago

1.0.18

1 year ago

1.0.17

1 year ago

1.0.16

1 year ago

1.0.11

2 years ago

1.0.15

1 year ago

1.0.14

1 year ago

1.0.13

1 year ago

1.0.12

1 year ago

1.0.10

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago