UNPKG

mojio-js-sdk

Version:

Mojio javascript REST client.

118 lines (95 loc) 4.05 kB
// Generated by CoffeeScript 1.10.0 (function() { var MojioAuthSDK, MojioSDK, app, authorization_uri, client_id, client_secret, express, oauth2, redirect_uri, redirect_uri2, sdk; express = require('express'); MojioSDK = require('../../src/nodejs/sdk/MojioSDK'); MojioAuthSDK = require('../../src/nodejs/sdk/MojioAuthSDK'); app = express(); client_id = '41a04077-0157-49fb-a35c-6e2824f3b348'; client_secret = 'd80357f8-cbc9-4022-b340-6e99a72e7e0b'; oauth2 = require('simple-oauth2')({ clientID: client_id, clientSecret: client_secret, site: 'https://accounts.moj.io', tokenPath: '/oauth2/token', authorizationPath: '/oauth2/authorize' }); redirect_uri = 'http://localhost:3000/callback'; redirect_uri2 = 'http://localhost:3000/callback'; authorization_uri = oauth2.authCode.authorizeURL({ client_id: client_id, redirect_uri: redirect_uri, scope: ['full'] }); sdk = new MojioSDK({ sdk: MojioAuthSDK, client_id: client_id, client_secret: client_secret, test: true }); app.get('/authCode', function(req, res) { console.log("res:" + res); return sdk.authorize(redirect_uri).scope(['full']).redirect(res); }); app.get('/password', function(req, res) { console.log("res:" + res); return sdk.token(redirect_uri).credentials("testing@moj.io", "Test123!").scope(['full']).callback(function(error, result) { var token; if (error) { console.log('Access Token Error', JSON.stringify(error.content) + " message:" + error.statusMessage + " url:" + sdk.url()); return res.send('Access Token Error: ' + JSON.stringify(error.content) + " message:" + error.statusMessage + " url:" + sdk.url()); } else { token = result; console.log("Token:" + JSON.stringify(token)); return res.send('World: <br><a href="/unauth">Unauthorize Mojio</a><br><a href="/logout">Log out of Mojio</a><br><a href="/consent">Remove consent from Mojio</a>'); } }); }); app.get('/logout', function(req, res) { var loggedOut; console.log("res:" + res); loggedOut = function(error, result) { return console.log("logged out"); }; return sdk.unauthorize("http://localhost:3000/callback").login().redirect(res); }); app.get('/consent', function(req, res) { var loggedOut; console.log("res:" + res); loggedOut = function(error, result) { return console.log("Removed Consent"); }; return sdk.unauthorize("http://localhost:3000/callback").consent().redirect(res); }); app.get('/unauth', function(req, res) { var loggedOut; console.log("res:" + res); loggedOut = function(error, result) { return console.log("logged out and removed consent"); }; return sdk.unauthorize("http://localhost:3000/callback").login().consent().redirect(res); }); app.get('/callback', function(req, res) { var code, saveToken; code = req.query.code; console.log('/callback'); saveToken = function(error, result) { var token; if (error) { console.log('Access Token Error', JSON.stringify(error.content) + " message:" + error.statusMessage + " url:" + sdk.url()); return res.send('Access Token Error: ' + JSON.stringify(error.content) + " message:" + error.statusMessage + " url:" + sdk.url()); } else { token = result; console.log("Token:" + JSON.stringify(token)); return res.send('World: <br><a href="/unauth">Unauthorize Mojio</a><br><a href="/logout">Log out of Mojio</a><br><a href="/consent">Remove consent from Mojio</a>'); } }; return sdk.token(redirect_uri).parse(req).callback(saveToken); }); app.get('/', function(req, res) { return res.send('Hello<br><a href="/authCode">Log in with Mojio: Authorization Code Flow</a><br><a href="/password">Log in with Mojio: Password Flow</a>'); }); app.listen(3000); console.log('Express server started on port 3000'); }).call(this); //# sourceMappingURL=authorization_code_flow.js.map