q-fetch-2
v1.0.6
Published
![install size](https://packagephobia.now.sh/badge?p=%40qrvey%2Ffetch) ![coverage](https://img.shields.io/badge/unit_test_coverage-97%25-brightgreen)
Downloads
5
Readme
@qrvey/fetch
@qrvey/fetch is a lightweight and reliable library for making RESTful requests in Node.js applications. It uses the native fetch
library (Node.js 18+), avoiding the need for external dependencies.
Installation
You can install the @qrvey/fetch package via npm. Run the following command in your terminal:
npm install @qrvey/fetch
API Documentation
Available Methods
get(endpoint: string, options: IHttpActionOptions): Promise<any>
: Performs an HTTP GET request.post(endpoint: string, body: unknown, options: IHttpActionOptions): Promise<any>
: Performs an HTTP POST request.put(endpoint: string, body: unknown, options: IHttpActionOptions): Promise<any>
: Performs an HTTP PUT request.patch(endpoint: string, body: unknown, options: IHttpActionOptions): Promise<any>
: Performs an HTTP PATCH request.delete(endpoint: string, body: unknown, options: IHttpActionOptions): Promise<any>
: Performs an HTTP DELETE request.
Example Usage
CommonJS
const { FetchService } = require('@qrvey/fetch');
class MyFetchClient extends FetchService {
/**
* Performs an HTTP GET request.
*
* @param {string} endpoint - The endpoint of the request.
* @param {object} options - Options for the request.
* @returns {Promise<any>} The response of the request.
*/
static findData(endpoint, options) {
return this.get(endpoint, options);
}
/**
* Performs an HTTP POST request.
*
* @param {string} endpoint - The endpoint of the request.
* @param {object} data - The data to send in the request.
* @param {object} options - Options for the request.
* @returns {Promise<any>} The response of the request.
*/
static sendData(endpoint, data, options) {
return this.post(endpoint, data, options);
}
}
module.exports = MyFetchClient;
ECMAScript
import { FetchService } from '@qrvey/fetch';
class MyFetchClient extends FetchService {
/**
* Performs an HTTP GET request.
*
* @param {string} endpoint - The endpoint of the request.
* @param {object} options - Options for the request.
* @returns {Promise<any>} The response of the request.
*/
static findData(endpoint, options) {
return this.get(endpoint, options);
}
/**
* Performs an HTTP POST request.
*
* @param {string} endpoint - The endpoint of the request.
* @param {object} data - The data to send in the request.
* @param {object} options - Options for the request.
* @returns {Promise<any>} The response of the request.
*/
static sendData(endpoint, data, options) {
return this.post(endpoint, data, options);
}
}
export default MyFetchClient;