Skip to content

binary-blazer/blink-http

Blink HTTP

A fast, elegant and standalone HTTP client.

npm npm CI

Installation

You can install the package using npm, pnpm, yarn or bun.

npm install blink-http
# or
pnpm add blink-http
# or
yarn add blink-http
# or
bun install blink-http

Usage

Basic Usage

with BaseURL:

import { BlinkClient } from 'blink-http';

const blink = new BlinkClient({
    baseURL: 'https://jsonplaceholder.typicode.com', // is optional
    timeout: 10000, // is optional
    userAgent: 'custom-user-agent' // is optional
});

const response = await blink.get('/posts/1');
console.log(await response.json()); // return response as JSON

without BaseURL:

import { BlinkClient } from 'blink-http';

const blink = new BlinkClient({
    timeout: 10000, // is optional
    userAgent: 'custom-user-agent' // is optional
});

const response = await blink.get('https://jsonplaceholder.typicode.com/posts/1');
console.log(await response.json()); // return response as JSON

Methods

  • get

    get(url: string, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • post

    post(url: string, body: any, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • put

    put(url: string, body: any, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • delete

    delete(url: string, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • patch

    patch(url: string, body: any, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • head

    head(url: string, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • options

    options(url: string, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>
  • trace

    trace(url: string, options?: Omit<RequestInit, "body" | "method">, queryParams?: Record<string, string>, onProgress?: (event: ProgressEvent) => void): Promise<Response>

Examples

GET Request

const response = await blink.get('https://jsonplaceholder.typicode.com/posts/1');
console.log(response.json());

POST Request

const response = await blink.post('https://jsonplaceholder.typicode.com/posts', { title: 'foo', body: 'bar', userId: 1 });
console.log(response.json());

Contributing

Please read the CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests.

License

This project is licensed under the BSD-3-Clause License - see the LICENSE file for details.