A simple package with no dependencies for native requests using callback
npm install native-request
Native Request is a simple module that makes you create native node.js requests supports https.
- supports HTTPS
- 0 dependencies
- use callbacks
- 1.2.0: Proxy management
Install the dependencies and devDependencies and start the server.
``bash`
npm install native-request
Easy
`js
let request = require('native-request');
request.request({
url: "http://github.com/",
method: 'POST',
}, function(err, data, status, headers) {
console.log(status); //200
console.log(data); // page content
console.log(headers); // response headers
});
`
Full
`js
let request = require('native-request');
request.request({
url: "http://github.com/",
method: 'POST',
Cookies: { john: "doe", human: true },
headers: {
authorization: "Token121"
},
requestOptions: {
followRedirect: false,
maxRedirect: 1,
trustRedirect: false
}
}, function(err, data, status, headers) {
console.log(status); //200
console.log(data); // page content
console.log(headers); // response headers
});
`
#### Parameters
| Options | Required | Type | Parameters | Default
|:--|:--:|:--: |-- |:--: |
| url | ✓ | String |Target url | |
| method| ✓ | String|HTTP method to use. More info here | |
| Headers | | JSON Object | Pass headers to the request with a JSON format. | {"content-type": "application/json"} |
| Cookies| | JSON Object | Pass cookies to the request with a JSON format | |
| requestOptions| | See below |
#### RequestOptions
The parameters below are here for client configuration. None of these parameters will be sent.
These parameters must be put in the object 'requestOptions'
| Options | Required | Type | Parameters | Default
|:--|:--:|:--: | -- | :--: |
| followRedirect | | boolean | Decide if we should follow the redirects | true
| maxRedirect| | int| Decide the maximum number of redirects allowed | 3
| trustRedirect| | boolean | If false, headers will not be sent when a redirect happen | true
`js`
let request = require('native-request');
request.get('https://github.com', function(err, data, status, headers) {
if (err) {
throw err;
}
console.log(status); //200
console.log(data); // page content
console.log(headers); // response headers
});`
To add custom headers just do like this:js
let request = require('native-request');
let headers = {
"content-type": "plain/text"
}
request.get('https://github.com', headers, function(err, data, status, headers) {
if (err) {
throw err;
}
console.log(status); //200
console.log(data); // page content
console.log(headers); // response headers
});
`$3
- request.post(path, callback)
- request.post(path, data, callback)
- request.post(path, data, headers, callback)
To send an empty post:
`js`
let request = require('native-request');
request.post('https://github.com', function(err, data, status, headers) {
if (err) {
throw err;
}
console.log(status); //200
console.log(data); // page content
console.log(headers); // response headers
});
With headers and data:
`js
let request = require('native-request');
let data = {
"example": true,
}
let headers = {
"content-type": "plain/text"
}
request.post('https://github.com', data, headers, function(err, data, status, headers) {
if (err) {
throw err;
}
console.log(status); //200
console.log(data); // page content
console.log(headers); // response headers
});
``