Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

fetch-opts

bocarw1218MIT1.0.6TypeScript support: included

FetchOptionsBuilder is a fluent and easy-to-use utility to build fetch options for making HTTP requests with the Fetch API. It provides a convenient way to configure common options such as Bearer token, method, content type, body, credentials, and custom

fetch, options, builder, http, request, fetch-api, fetch-options, fetch-options-builder, bearer-token, content-type, headers

readme

Fetch Opts

Test GitHub license

Fetch Opts is a lightweight JavaScript library that simplifies the process of creating fetch options for the Fetch API. It provides a chainable interface for building fetch options, making it easier to work with various options such as Bearer tokens, methods, content types, bodies, credentials, and custom headers.

Installation

NPM:

npm install fetch-opts

Yarn:

yarn add fetch-opts

Usage

import { FetchOptionsBuilder } from 'fetch-opts';

// Create a new instance of the builder.
const builder = new FetchOptionsBuilder();

const requestBody = {
  email: 'myemail@mail.com',
  password: 'password123',
};

// Chain the methods to set the desired options.
const fetchOptions = builder
  .method('POST')
  .contentType('application/json')
  .body(requestBody)
  .credentials('include')
  .build();

fetch('https://api.example.com/signin', fetchOptions)
  .then((response) => response.json())
  .then((data) => console.log(data))
  .catch((error) => console.error('Error:', error));

API Reference

Method Parameters Description
bearerToken accessToken: string or number Sets the Bearer token for the request.
method method: string Sets the HTTP method for the request.
contentType contentType: string Sets the Content-Type header for the request. Includes built-in types for common content types.
body body: any Sets the request body. If the method is 'GET', it will display a warning and ignore the body.
credentials credentials: string Sets the credentials mode for the request.
customHeader key: string, value: string Sets a custom header for the request.
build | Builds and returns the final fetch options object.

Contributing

Contributions are welcome from the community! If you're interested in contributing, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix.
  3. Make your changes, and add tests for your changes.
  4. Commit your changes.

  5. Note that Husky is set up to automatically run tests and format your code using Prettier before each commit. Make sure your changes pass the tests.

  6. Push your branch to your fork.

  7. Open a pull request from your fork to the main repository.

License

This project is licensed under MIT