Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

flutter

Package Overview
Dependencies
Maintainers
2
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

flutter

Twitter oAuth Module for the 1.1 API

  • 0.0.5
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
2
Created
Source

Flutter

Dependencies Join the chat at https://gitter.im/gosquared/flutter

NPM

Twitter API authentication and fetching helpers

Managing oauth flow can be a pain and involve a lot of messy code. Flutter helps with that.

Auth flow example

var express = require('express');
var Flutter = require('flutter');

var flutter = new Flutter({
  consumerKey: 'MY CONSUMER KEY',
  consumerSecret: 'MY CONSUMER SECRET',
  loginCallback: 'http://my-host/twitter/callback',

  authCallback: function(req, res, next) {
    if (req.error) {
      // Authentication failed, req.error contains details
      return;
    }

    var accessToken = req.session.oauthAccessToken;
    var secret = req.session.oauthAccessTokenSecret;

    // Store away oauth credentials here

    // Redirect user back to your app
    res.redirect('/back/to/app');
  }
});

var app = express();

app.get('/twitter/connect', flutter.connect);

// URL used in loginCallback above
app.get('/twitter/callback', flutter.auth);


// Direct users to /twitter/connect to initiate oauth flow.

Querying Twitter API

Currently only GET functions are supported

// var {accessToken, secret} = retrieve credentials for request

flutter.API.get('search/tweets.json', { q: 'bacon' }, accessToken, secret, function(err, results) {
  console.log(results); // { statuses: [ { ...etc } ] }
});

Options

var flutter = new Flutter({

  // Pass this to log messages inside Flutter
  debug: function(msg){ ... },

  // Twitter API app credentials
  consumerKey: 'foo',
  consumerSecret: 'bar',

  // Twitter API login callback
  loginCallback: 'http://foo.com/authCallback',

  // the URL to redirect to after authorisation is complete and we have tokens
  // will not be used if authCallback is overridden
  completeCallback: 'http://foo.com/completeCallback',

  // called immediately before the user is redirected to Twitter's authorize
  // screen, used this to stash parameters etc on the request session
  connectCallback: function(req, res, next){},

  // Called on successful auth.
  // req.session contains auth parameters (see above)
  // if not defined, Flutter will redirect to completeCallback specified above
  authCallback: function(req, res, next){},

  // Cache lifetime to use for API requests. Set to something falsy to disable cache
  cache: 60000,

  // Redis config. Used for caching api responses.
  // `options` is passed to redis.createClient (https://github.com/NodeRedis/node_redis#rediscreateclient)
  redis: { host: 'localhost', port: 6379, database: 0, options: {} },

  // set this to a redis client to use instead of creating a new one
  cacheClient: redisClient,

  // Key prefix used on all cache keys in redis
  prefix: 'flutter:'

});

Keywords

FAQs

Package last updated on 13 Aug 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc