我希望能夠在GitHub OAuth的單獨路由中使用authenticate
(用於註冊GitHub)和authorize
(用於將GitHub帳戶鏈接到現有帳戶)。我使用兩種不同的路由處理LinkedIn OAuth,一個呼叫passport.authenticate()
,另一個呼叫passport.authorize()
。儘管GitHub只允許你有一個回調URL。如何爲GitHub OAuth實現/破解兩個回調URL
我發現這個post解釋了一種解決方法,但不知道如何實現答案。
下面是我設置Linkedin OAuth的工作正常。
router.get('/auth/linkedin', passport.authenticate('linkedin'));
router.get('/auth/linkedin/callback', passport.authenticate('linkedin', {
failureRedirect : '/app/#/login'
}), function(req, res){
res.redirect('/app/#/profile');
});
router.get('/connect/linkedin',
passport.authorize('linkedin', {
failureRedirect: '/app/#/login' })
);
router.get('/connect/linkedin/callback',
passport.authorize('linkedin', {
successRedirect : '/app/#/profile',
failureRedirect : '/app/#/login'
})
);