1.0.4 • Published 10 years ago
oh-request v1.0.4
oh-request
A simple and lightweight module for native HTTP clients.
This module supports the Promise feature of ES6.
Usage
The usage is really simple. First, you must use npm to install the module.
npm install --save oh-requestThen, in your code:
var request = require('oh-request');Params
request(options, body)
options
The options parameter must be an object.
hoststring A target for the client.(option, defalut value islocalhost)pathstring A target for the client.(option, defalut value is/)portnumber A port for the target.(option, defalut value is80)timeoutnumber Set timeout for the request.(option, defalut value is15000ms)methodstring The request method, supportGETandPOST.(case insensitive)headersobject The request headers, such asContent-Type,Acceptand so on.(option)expectboolean Set theExpect: 100-Continueheader, and don't send pay-load until the 100 head is received.(option)queryobject Set theGETparams in URL.(option)
body
Must be an object that can be consumed by JSON.stringify or casted to a string, or null.
return
If response is ok, the return value which is an instance of http.IncomingMessage. By the way, the data property of return value is the json data from remote server.
sample
var request = require('oh-request');
request({
host: 'google.com',
method: 'GET',
path: '/search',
query: {
q: 'nodejs'
},
headers: {
'x-foo-bar' : "Hello World"
},
timeout: 3000
})
.then(function(res) {
console.log(res.headers); // the property of http.IncomingMessage
return Promise.resolve('Bingo');
}, function(err) {
console.log(err);
return Promise.reject('Oh no!');
})
.then(function(res) {
console.log(res.data); // the json data from remote server
}, function(err) {
console.log(err);
});Contact
oh-request is available on github here under MIT license. If you hit bugs, fill issues on github. Feel free to fork, modify and have fun with it :)