From ae9f9a270720100f2b5ddfe7319a855450e22f0d Mon Sep 17 00:00:00 2001 From: Horiuchi_H Date: Wed, 18 Jun 2014 19:09:57 +0900 Subject: [PATCH] bugfix & rename test file --- .../{passport-test.ts => passport-tests.ts} | 29 ++++++++++++++++++- passport/passport.d.ts | 4 +-- 2 files changed, 30 insertions(+), 3 deletions(-) rename passport/{passport-test.ts => passport-tests.ts} (61%) diff --git a/passport/passport-test.ts b/passport/passport-tests.ts similarity index 61% rename from passport/passport-test.ts rename to passport/passport-tests.ts index e3ee9d4f2b..7542e2e0ed 100644 --- a/passport/passport-test.ts +++ b/passport/passport-tests.ts @@ -34,7 +34,7 @@ app.post('/login', }); app.post('/login', function(req, res, next) { - passport.authenticate('local', function(err, user, info) { + passport.authenticate('local', function(err: any, user: { username: string; }, info: { message: string; }) { if (err) { return next(err) } if (!user) { req.session.error = info.message; @@ -52,6 +52,33 @@ app.get('/logout', function(req, res) { res.redirect('/'); }); +function authSetting(): void { + var authOption = { + successRedirect: '/', + failureRedirect: '/login', + }; + var successCallback = (req: express.Request, res: express.Response) => { + res.redirect('/'); + }; + + app.get('/auth/facebook', + passport.authenticate('facebook')); + app.get('/auth/facebook/callback', + passport.authenticate('facebook', authOption), successCallback); + + app.get('/auth/twitter', + passport.authenticate('twitter')); + app.get('/auth/twitter/callback', + passport.authenticate('twitter', authOption)); + + app.get('/auth/google', + passport.authenticate('google', { scope: + [ 'https://www.googleapis.com/auth/userinfo.profile' ] })); + app.get('/auth/google/callback', + passport.authenticate('google', authOption), successCallback); + +} + function ensureAuthenticated(req: express.Request, res: express.Response, next: (err?: any) => void) { if (req.isAuthenticated()) { return next(); } if (req.isUnauthenticated()) { diff --git a/passport/passport.d.ts b/passport/passport.d.ts index 3b46c7d8f7..fbb5f1164d 100644 --- a/passport/passport.d.ts +++ b/passport/passport.d.ts @@ -15,8 +15,8 @@ declare module 'passport' { function initialize(options?: { userProperty: string; }): express.Handler; function session(options?: { pauseStream: boolean; }): express.Handler; - function authenticate(strategy: string, options: Object, callback?: express.Handler): express.Handler; - function authenticate(strategy: string, callback2: (err: any, user: any, info: any) => void): express.Handler; + function authenticate(strategy: string, callback?: Function): express.Handler; + function authenticate(strategy: string, options: Object, callback?: Function): express.Handler; function authorize(strategy: string, options: Object, callback?: express.Handler): express.Handler; function serializeUser(fn: (user: any, done: (err: any, id: any) => void) => void): void; function deserializeUser(fn: (id: any, done: (err: any, user: any) => void) => void): void;