BoxLang 🚀 A New JVM Dynamic Language Learn More...

Facebook API & Social Login

v1.0.5 Modules

Coldbox Module to allow Social Login via Facebook

Setup & Installation

Add the following structure to Coldbox.cfc

facebook = {
    oauth = {
        redirectURL     = "http://www.nextstep.guru/facebook/oauth",
        loginSuccess    = "login.success",
        loginFailure    = "login.failure",
        appID           = "123456789",
        appSecret       = "987654321",
        scope           = "public_profile,email,user_friends",
        responseType    = "code"
    }
}

Interception Point

If you want to capture any data from a successful login, use the interception point twitterLoginSuccess. Inside the interceptData structure will contain all the provided data from twitter for the specific user.

An example interception could look like this

component {
    function facebookLoginSuccess(event,interceptData){
        var queryService = new query(sql="SELECT roles,email,password FROM user WHERE facebookUserID = :id;");
            queryService.addParam(name="id",value=interceptData['id']);
        var lookup = queryService.execute().getResult();
        if( lookup.recordCount ){
            login {
                loginuser name=lookup.email password=lookup.password roles=lookup.roles;
            };
        }else{
            // create new user
        }
    }
}

$ box install nsg-module-facebook

No collaborators yet.
 
  • {{ getFullDate("2015-02-17T16:34:27Z") }}
  • {{ getFullDate("2016-06-10T08:46:51Z") }}
  • 2,791
  • 2,388