0.3.0 • Published 3 years ago
oauth2-server-grant-type-facebook v0.3.0
OAuth2 Server Facebook Grant Type
Adds Facebook grant type for oauth2-server
Installation
Using Yarn
yarn add oauth2-server-grant-type-facebookUsing NPM
npm install oauth2-server-grant-type-facebookUsage
Add getUserWithFacebook to oauth2-server model.
const getUserWithFacebook = async (facebookData) => {
// Find and return user by Facebook ID
// Find and return user by Facebook email
// If not exists create new user
};Add Facebook grant type to extendedGrantTypes in oauth2-server options:
import FacebookGrantType from 'oauth2-server-grant-type-facebook';
const options = {
model: ...,
extendedGrantTypes: {
facebook: FacebookGrantType,
}
requireClientAuthentication: {
facebook: false,
},
}You can customize what fields to return from Facebook by providing facebookGrantType options in model:
const options = {
model: {
...model,
facebookGrantType: {
fields: ['email', 'first_name', 'last_name', 'picture.width(500).height(500)'], // Default: email, first_name, last_name
}
}
}Post request to /oauth/token with facebook grant type:
{
"grant_type": "facebook",
"client_id": "YOUR_CLIENT_ID",
"facebook_token": "FACEBOOK_TOKEN"
}License
The package is available as open source under the terms of the MIT License.