- Added browser version (moviedb.js and moviedb.min.js)

- Request token now returns an error instead of throwing.
This commit is contained in:
Dan Zajdband
2015-03-07 12:14:30 -03:00
parent b5ef11ed61
commit b9ce9fba94
5 changed files with 1495 additions and 23 deletions

View File

@@ -3,14 +3,14 @@
* Module dependencies
*/
var request = require('superagent')
, endpoints = require('./endpoints.json');
var request = require('superagent');
var endpoints = require('./endpoints.json');
/*
* Exports the constructor
*/
module.exports = function(api_key, base_url){
module.exports = function(api_key, base_url) {
if(api_key) return new MovieDB(api_key, base_url);
else throw new Error('Bad api key');
};
@@ -37,11 +37,11 @@ MovieDB.prototype.requestToken = function(fn){
.query({'api_key': self.api_key})
.set('Accept', 'application/json')
.end(function(res){
if(res.ok) self.token = res.body;
else throw res.error;
if(!res.ok) return fn(res.error);
self.token = res.body;
fn();
}).on('error', function(error){
throw error;
fn(error);
});
return this;
@@ -63,7 +63,8 @@ Object.keys(endpoints.methods).forEach(function(method){
}
if(!this.token || Date.now() > +new Date(this.token.expires_at)) {
this.requestToken(function(){
this.requestToken(function(err){
if(err) return fn(err);
execMethod.call(self, met[m].method, params, met[m].resource, fn);
});
} else {