angularjspassport.jssatellizer

Satellizer and Passport integration


I currently have an ExpressJS application with PassportJS up and running. I use Passport to authenticate with GitHub. These are the existing endpoints.

This creates the authorization url and redirect to that url:

app.get('/auth/login', passport.authenticate('github'))

This does all the magic to get the access token, a user object and a json web token:

app.get('/auth/github/callback', passport.authenticate('github'),
  function(req, res) { 
    res.send(createJWT(req.user));
  })

As you can see, I only have/need 2 end points. The authentication/api is located at http://localhost:8080/ and the frontend is located at http://localhost:3000/

So my question is: What are the settings for Satellizer to work with these existing endpoints? Should I be using the $authProvider.github() or a custom $authProvider.oauth() provider object?


Solution

  • Satellizer and Passport don't play well with each other. For instance Satellizer uses POST requests throughout, while Passport mostly relies on GET requests.

    There is no way to reconfigure Satellizer to use GET requests.