passport.js - How to get accessToken generated whit passport in loopback -
i integrating passport loopback, , works fine, problems how access token.
i have web app (served in different server loopback) so:
- make request (in loopback backend)
- this redirect me facebook, approve
- return loopback (do passport work)
- now, how can accesstoken generated in web app?
i can redirect (if login successful) web app, lose accesstoken in progress.
any ideas?
i make request
solution:
the access token seted loopback in cookies, when redirect web app, can access by:
document.cookie if wanna pass through variable:
var access_token = document.cookie.replace(/(?:(?:^|.*;\s*)access_token\s*\=\s*([^;]*).*$)|^.*$/, "$1") var userid = document.cookie.replace(/(?:(?:^|.*;\s*)userid\s*\=\s*([^;]*).*$)|^.*$/, "$1") but
if use different urls backend , frontend, cant recommend use solution of post
i hope, got idea. here flow follow passport/facebook strategy.
1) client side(web app): window.location = http://urlservername:port/passport/facebook can redirect on server side also.
2) user enter credentials on facebook.
3) facebook redirect callback.
router.get('/passport/facebook', passport.authenticate('facebook')); router.get('/passport/facebook/callback', passport.authenticate('facebook', { failureredirect: '/login' }), (req, res) => { let url = req.url; // url contains code let urs = req.usr; // user info. // can set cookie info want. can auth code, user profile or jwt generated in same request. res.cookie("data",usr,{httponly:true}); res.redirect('urlwebapplication'); }); 4) inside callback can set cookie information want. way can access in webapp.
hope clarify.
Comments
Post a Comment