To get started with this package, install it with npm i buffer-node-api --save
.
For simplicity, examples will be shown using the ES5 syntax.
In a real world situation, you should save the client in the user's session, and not overwrite the client variable on the server.
var BufferClient = require('buffer-node-api'),
app = require('express')(),
client = null;
// Returning from the OAuth gateway
app.get('/verify', function (req, res) {
client = new BufferClient({
access_token: req.query.code,
client_id: '<your_client_id>',
client_secret: '<your_client_secret>',
redirect_url: '<your_redirect_url>',
authenticated: false
}, function (err, result) {
if (!err) {
// Client instantiated correctly, you should redirect away from this page
}
});
});
app.get('/login', function (req, res) {
var auth_url = BufferClient.getAuthorizationUrl('<your_client_id>', '<your_redirect_url>');
// Use auth_url somewhere on your page to link to Buffer's authorisation gateway page
});
app.get('/deauthorize', function (req, res) {
client.deauthorizeUser(function (err, result) {
if (!err) {
// User deauthorised. Redirect away
}
});
});
For full code documentation and examples, click here.
This package is released under the MIT Licence. This means you're free to use it at no cost in any of your commercial or non-commercial projects. If you want to contribute to this project, great! Please read below for instructions on how to get involved.
Getting started is easy with the Vagrant VM. Simply run There is currently a bug in the Chef provisioning preventing the Vagrant instance from starting. Looking into it and will apply a fix ASAP. For now, please ignore this step.vagrant up
and then vagrant ssh
.
Please follow the following guidelines when writing new code:
- Nobody likes being wet. Stay DRY.
- Follow the Boy Scout Rule. Litterers will be punished!
- All source code is written in ES6 and transpiled with Babel. No ES5 code, please!
- Test your code with the
npm test
command and check for coverage usingnpm run coverage
. If possible, aim for 100% coverage - the Travis/Coveralls build process will fail if the overall value falls below 80%. - Don't be this guy. Meaningless commit messages make me sad :(