當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript ExtractJwt.fromAuthHeaderWithScheme方法代碼示例

本文整理匯總了TypeScript中passport-jwt.ExtractJwt.fromAuthHeaderWithScheme方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript ExtractJwt.fromAuthHeaderWithScheme方法的具體用法?TypeScript ExtractJwt.fromAuthHeaderWithScheme怎麽用?TypeScript ExtractJwt.fromAuthHeaderWithScheme使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在passport-jwt.ExtractJwt的用法示例。


在下文中一共展示了ExtractJwt.fromAuthHeaderWithScheme方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: config

    config() {

        let opts = {
            secretOrKey: config.secret,
            jwtFromRequest: ExtractJwt.fromAuthHeaderWithScheme('bearer')
        };

        passport.use(new Strategy(opts, (jwtPayload, done) => {
            User
                .getById(jwtPayload.id)
                .then(user => {
                    if (user) {
                        return done(null, {
                            id: user.id,
                            email: user.email
                        });
                    }
                    return done(null, false);
                })
                .catch(error => {
                    done(error, null);
                })
        }));

        return {
            initialize: () => passport.initialize(),
            authenticate: () => passport.authenticate('jwt', { session: false })
        }
    }
開發者ID:mromanjr93,項目名稱:nodejsddd,代碼行數:29,代碼來源:auth.ts

示例2: done

                        if (equal) {
                            return done(null, user);
                        } else {
                            return done(err, false, { message: 'Failed to authenticate.' });
                        }
                    });
            } else {
                return done(err, false, { message: 'Failed to authenticate.' });
            }
        });
    });
passport.use(strategy);

let jwtOptions: jwt.StrategyOptions = {
    secretOrKey: 'qwerty',
    jwtFromRequest: jwt.ExtractJwt.fromAuthHeaderWithScheme('jwt')
};
let jwtStrategy = new jwt.Strategy(
    jwtOptions,
    (payload, done) => {
        let db = new UserRepository();
        db.findById(payload.userId, (err, user) => {
            if (err) {
                done(err, false);
            } else {
                if (user) {
                    done(null, user);
                } else {
                    done(null, false);
                }
            }
開發者ID:kmarecki,項目名稱:slovo,代碼行數:31,代碼來源:auth.ts

示例3: JwtStrategy

import * as passport from 'passport';

let opts: StrategyOptions = {
    jwtFromRequest: ExtractJwt.fromAuthHeader(),
    secretOrKey: 'secret',
    issuer: "accounts.example.com",
    audience: "example.org"
};

passport.use(new JwtStrategy(opts, function(jwt_payload, done) {
    findUser({id: jwt_payload.sub}, function(err, user) {
        if (err) {
            return done(err, false);
        }
        if (user) {
            done(null, user);
        } else {
            done(null, false, {message: 'foo'});
            // or you could create a new account
        }
    });
}));

opts.jwtFromRequest = ExtractJwt.fromHeader('x-api-key');
opts.jwtFromRequest = ExtractJwt.fromBodyField('field_name');
opts.jwtFromRequest = ExtractJwt.fromUrlQueryParameter('param_name');
opts.jwtFromRequest = ExtractJwt.fromAuthHeaderWithScheme('param_name');
opts.jwtFromRequest = (req: Request) => { return req.query.token; };

declare function findUser(condition: {id: string}, callback: (error: any, user :any) => void): void;
開發者ID:0815fox,項目名稱:DefinitelyTyped,代碼行數:30,代碼來源:passport-jwt-tests.ts


注:本文中的passport-jwt.ExtractJwt.fromAuthHeaderWithScheme方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。