app.get( '/rest', function(req, res) { var route = req.query.route; var args = query.stringify( delete req.query.route && req.query ); var url = service.json + route + ( args ? '?' + args : '' ); oauth.get( url , req.session.access.token , req.session.access.secret , function(error, response, result) { res.set( 'Content-Type', 'application/json' ); res.send( response ); } ); });
async function getTwitterUserProfileWithOAuth1 (username = 'twitterdev') { var oauth = new OAuth.OAuth( 'https://api.twitter.com/oauth/request_token', 'https://api.twitter.com/oauth/access_token', process.env.TWITTER_CONSUMER_KEY, process.env.TWITTER_CONSUMER_SECRET, '1.0A', null, 'HMAC-SHA1' ) const get = promisify(oauth.get.bind(oauth)) const body = await get( `https://api.twitter.com/1.1/users/show.json?screen_name=${username}`, process.env.TWITTER_ACCESS_KEY, process.env.TWITTER_ACCESS_TOKEN_SECRET ) return JSON.parse(body) }
app.get('/sessions/callback', (request, response) => { consumer.getOAuthAccessToken( request.session.oauthRequestToken, request.session.oauthRequestTokenSecret, request.query.oauth_verifier, (error, oauthAccessToken, oauthAccessTokenSecret) => { if (error) { response.send("error getting access token"); } else { request.session.oauthAccessToken = oauthAccessToken; request.session.oauthAccessTokenSecret = oauthAccessTokenSecret; consumer.get(`${config.jiraUrl}/rest/auth/latest/session`, request.session.oauthAccessToken, request.session.oauthAccessTokenSecret, function (error, data) { console.log('response', data, error); data = JSON.parse(data); response.send(`Authorized username: ${data["name"]}`); }, "application/json" ); } } ); });