moviedatabase-api
Version:
The Movie Database (TMDb) Wrapper API Library
40 lines (33 loc) • 989 B
JavaScript
var request = require('request');
var Promise = require('promise');
var _ = require('underscore');
var Helpers = require('./helpers');
/**
* MovieDatabaseApi "class"
*
* @param {[type]} apiKey [description]
*/
function MovieDatabaseApi(apiKey) {
this.baseUrl = 'https://api.themoviedb.org/3';
this.apiKey = apiKey;
this.newToken();
this.movies = require('./movie')(this);
this.search = require('./search')(this);
this.genre = require('./genre')(this);
}
_.extend(MovieDatabaseApi.prototype, Helpers.prototype);
MovieDatabaseApi.prototype.newToken = function () {
return request({
url: this.baseUrl + '/authentication/token/new',
method: 'GET',
qs: {
api_key: this.apiKey
}
}, function (error, response, body) {
this.expiresAt = body.expires_at;
this.requestToken = body.request_token;
}.bind(this));
}
module.exports = function (apiKey) {
return new MovieDatabaseApi(apiKey);
};