Micro-library to make http request simply in the browser or with a NodeJs server.
JavaScriptMIT
Molecular
Micro-library to make http request simply in the browser or with a NodeJs server.
Install
On nodejs
$ npm install molecularjs
On Bower
$ bower install molecularjs
Usage
With nodejs :
// First require the libraryvarMolecular=require('molecular');
Use Molecular like that
// Connect to your favorites APIsMolecular.connect({'Github': 'https://api.github.com','Slack' : 'http://api.slack.com'});// Set some options// There are all options from the basic nodejs https moduleMolecular.to('Github').setOptions({headers: {'user-agent': 'ArthurMialon'}});// Make a simply request to get some eventsMolecular.to('Github').get('/users/arthurmialon/events').progress(function(req){console.log("request progress");}).success(function(data,req){console.log(data,req);}).error(function(err,req){console.log(err);});
In a browser :
Use it almost like in nodejs :
You just have to import the file to your website
<!-- Import it to your website --><scriptsrc="molecular.js"></script>
You can simply add some methods to your connections
For example if I want to get the last commit from a specific repo (i.e: SailsJs)
// Set a new method to the apiMolecular.to('Github').setMethod('lasCommit',function(owner,repo,callback){this.get('/repos/'+owner+'/'+repo+'/commits').success(function(data){// Add JSON.parse(data) in nodejs to data instead of data[0]callback.apply(this,[false,data[0]]);}).error(function(err){callback.apply(this,[true,undefined]);});});// Get the last commit from sailsJsMolecular.to('Github').lasCommit('balderdashy','sails',function(err,commit){(err) ? console.error(err) : console.log(commit);});
Next version 1.1
Support http & https
Better options management (JSON and default options etc...)
Call en error if status code >= 200 & < 300 for http module nodejs