Nibbling Pastry Monster

    fetch-to-curl
    TypeScript icon, indicating that this package has built-in type declarations

    0.5.2 • Public • Published

    MIT Licence Tests & Build codecov Dependencies - David

    fetch request to curl

    This module was inspired by http-to-curl. Use it to generate curl requests with the inputs you would usually use for javascripts fetch. However it does not patch any modules like http-to-curl. It is just a wrapper to generate the curl string. This ensures that there are no side effects with your actual usage of fetch.

    Also note that the goal of this library is to be as simple and minimal as possible. This also means that there are zero dependencies 🎉

    Installation

    yarn add fetch-to-curl

    or

    npm install fetch-to-curl

    Usage

    import fetchToCurl from 'fetch-to-curl';
    // or In case there is no support for Es Modules in your environment:
    // const { fetchToCurl } = require("fetch-to-curl")
    
    const url = 'https://jsonplaceholder.typicode.com/posts/1';
    const options = {
      headers: {
        Authorization: "BASIC SOMEBASE64STRING"
      },
      method: 'get'
    };
    // Log yopur request
    console.log(fetchToCurl(url, options));
    // Do your request
    fetch(url, options);
    
    // Output
    curl "https://jsonplaceholder.typicode.com/posts/1" -X GET -H "Authorization: BASIC SOMEBASE64STRING"
    
    // You can also pass a single Request object 
    console.log(fetchToCurl({
      url: "https://jsonplaceholder.typicode.com/posts/1"
      headers: {
        Authorization: "BASIC SOMEBASE64STRING"
      },
      method: 'get'
    }));
    
    // and/or a Headers object as you would to with fetch
    console.log(fetchToCurl({
      url: "https://jsonplaceholder.typicode.com/posts/1"
      headers: new Headers({
        Authorization: "BASIC SOMEBASE64STRING"
      }),
      method: 'get'
    }))

    Playground and usage without package manager

    There is a minimal example of usage without package manager available which allows to directly test this in the browser console. (view source - playground.html)

    Install

    npm i fetch-to-curl

    DownloadsWeekly Downloads

    22,106

    Version

    0.5.2

    License

    MIT

    Unpacked Size

    6.75 kB

    Total Files

    8

    Last publish

    Collaborators

    • leoek