microauth-facebook

0.1.0 • Public • Published

microauth-facebook

Facebook oauth for micro

Build Status XO code style Greenkeeper badge

Add Facebook authentication to your micro service as easy as a flick of your fingers. This module is a part of microauth collection.

Installation

npm install --save microauth-facebook
# or 
yarn add microauth-facebook

Usage

app.js

const { send } = require('micro');
const  microAuthFacebook  = require('microauth-facebook');
 
const options = {
  appId: 'APP_ID',
  appSecret: 'APP_SECRET',
  callbackUrl: 'http://localhost:3000/auth/facebook/callback',
  path: '/auth/facebook',
    fields: 'name,email,cover,first_name', // Check fields list here: https://developers.facebook.com/docs/graph-api/reference/v2.11/user
    scope: 'public_profile,email' // Check permissions list here: https://developers.facebook.com/docs/facebook-login/permissions
};
 
const facebookAuth = microAuthFacebook(options);
 
// third `auth` argument will provide error or result of authentication
// so it will { err: errorObject} or { result: {
//  provider: 'facebook',
//  accessToken: 'blahblah',
//  info: userInfo
// }}
module.exports = facebookAuth(async (req, res, auth) => {
  if (!auth) {
    return send(res, 404, 'Not Found');
  }
 
  if (auth.err) {
    // Error handler
    console.error(auth.err);
    return send(res, 403, 'Forbidden');
  }
 
  return `Hello ${auth.result.info.first_name}`;
});

Run:

micro app.js

Now visit http://localhost:3000/auth/facebook

Author

Dmitry Pavlovsky

Readme

Keywords

none

Package Sidebar

Install

npm i microauth-facebook

Weekly Downloads

8

Version

0.1.0

License

MIT

Last publish

Collaborators

  • paloskin