Skip to content

xbenjii/imgurjs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

imgurjs

A wrapper for the Imgur API written in JavaScript. All methods take advantage of Promises.

Installation

npm install --save imgurjs

Instantiation

var Imgur = require('imgurjs');
var imgur = new Imgur({
    clientId: 'myClientId',
    clientSecret: 'myClientSecret'
});

##Using it

Since this library takes advantage of promises, all methods should use the promise pattern. Options should be passed as an object to the method.
var options = {
    username: 'me'
};
imgur.endpoint.method(options).then(function(data) {
    console.log(data);
}).catch(function(error) {
    console.log(error);
});

Authentication

Example uses Express
router.get('/login', function(req, res, next) {
    res.redirect(imgur.oauth.getOauthUrl());
});

router.get('/logincallback', function(req, res, next) {
    imgur.oauth.authorizeCallback(req.query.code).then(function(user) {
        req.session.user = user;
        res.redirect('/');
    });
});

router.get('/refreshsession', function(req, res, next) {
    imgur.oauth.refreshToken(req.session.user.refresh_token).then(function(user) {
        req.session.user = user;
        res.redirect('/');
    });
});

Uploading image example

fs.readFile('./myImage.png', function(err, data) {
    imgur.image.upload({
        file: data
    }).then(function(response) {
        console.log(response);
    }).catch(function(error) {
        console.log(error);
    });
});
Also accepts a stream
imgur.image.upload({
    file: fs.createReadStream('./myImage.png')
}).then(function(response) {
    console.log(response);
}).catch(function(error) {
    console.log(error);
});
And a URL
imgur.image.upload({
    file: 'http://mysite.com/myImage.png'
}).then(function(response) {
    console.log(response);
}).catch(function(error) {
    console.log(error);
});

Full documentation is available at https://xbenjii.github.io/imgurjs

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published