puny-req
v1.0.2
Published
Tiny and lightweight promise based HTTP(S) request library (70 sloc)
Downloads
13
Maintainers
Readme
Install
$ npm install --save puny-req
# OR
$ yarn add puny-req
Usage
const req = require('puny-req')
// GET request
req('https://jsonplaceholder.typicode.com/posts/1').then((res) => {
console.log(res.headers, res.body)
}).catch(console.log)
// POST request
req({
url: 'https://jsonplaceholder.typicode.com/posts',
json: {
title: 'Hi', body: 'Friend', userId: 1
}
}).then((res) => {
console.log(res.headers, res.body)
}).catch(console.log)
API
Module exports a single function that returns a promise. It accepts a url string as argument for simple GET
requests or an object with the following options:
{
url: String, // (Required)
port: Int, // Port of request. Defaults to 80 or 443 depending on protocol
headers :Object, // Headers associated with request. If form or json property provided, correct headers will be added
method: String, // Method of request, Defaults to GET or POST if form or json property provided
auth: String, // Authorization in 'user:password' format
encoding: String // Encoding defaulted to UTF-8
form: Object || String, // form data to POST
json: Object // Object to POST,
}
The promise resolves with the response object. The body is parsed to a object if possible.
CLI
The CLI is currently a work in progress.
Contribute
Contributions are welcome. Please open up an issue or create PR if you would like to help out.
Note: If editing the README, please conform to the standard-readme specification.
License
Licensed under the MIT License.