devsnek / snekfetch

fast, efficient, and user-friendly http requests
https://snekfetch.js.org/
MIT License
77 stars 21 forks source link
badge browser browser-request cool coverage-badge coverage-link deflate-response deps-badge deps-link fast gzip-response http http-client http-request nodejs stats-link tiny unpkg unpkg-link

npm David Coverage Status Build Status

NPM

snekfetch Version Badge

Snekfetch is a fast, efficient, and user-friendly library for making HTTP requests.

It also supports native ALPN negotiation in node for efficient http/2 requests!

The API was inspired by superagent, however it is much smaller and faster. In fact, in browser, it is a mere 4.0kb.

Documentation is available at https://snekfetch.js.org/

Some examples

const request = require('snekfetch');

request.post('https://httpbin.org/post')
  .send({ usingGoodRequestLibrary: true })
  .then(r => console.log(r.body)); // r.body is object from json response

request.get('https://s.gc.gy/o-SNAKES.jpg')
  .then(r => fs.writeFile('download.jpg', r.body)); // r.body is buffer

request.get('https://s.gc.gy/o-SNAKES.jpg')
  .pipe(fs.createWriteStream('download.jpg')); // pipes

Available for browser as UMD from unpkg

<script src="https://unpkg.com/snekfetch"></script>