我創建了一個使用本地身份驗證策略的護照的Koa應用程序。我想使用模塊koa-generic-session,因此我可以將會話數據存儲在Redis中。如何使用koa-generic-session()使用護照?
如何將這兩者一起使用?
我發現這個回購其做到這一點,但它並沒有真正似乎使用的會話和我不知道它是否是正確的:https://github.com/dozoisch/koa-react-full-example
我創建了一個使用本地身份驗證策略的護照的Koa應用程序。我想使用模塊koa-generic-session,因此我可以將會話數據存儲在Redis中。如何使用koa-generic-session()使用護照?
如何將這兩者一起使用?
我發現這個回購其做到這一點,但它並沒有真正似乎使用的會話和我不知道它是否是正確的:https://github.com/dozoisch/koa-react-full-example
(免責聲明:我不熟悉興亞,但我與快遞和護照。)
我查看了你提供的鏈接,這裏是他們如何使用koa通用會話與護照。
在server.js文件中,以下幾行指的是配置Passport。
08 - const passport = require("koa-passport");
13 - const config = require("./config/config");
38 - require("./config/passport")(passport, config);
40 - require("./config/koa")(app, config, passport);
第38行是傳統的護照配置文件,它簡單地設置序列化和反序列化。
第40行帶入koa.js並將應用程序,配置文件和護照變量傳遞給它。
下面的代碼是從koa.js:
04 - const session = require("koa-generic-session");
18 - app.keys = config.app.keys;
在koa.js尋找,KOA-通用會話被分配給變量的會話。這個變量之後這裏叫做:
35 - app.use(session({
36 - key: "koareactfullexample.sid",
37 - store: new MongoStore({ url: config.mongo.url }),
38 - }));
第18行,app.keys
被初始化爲koa-generic-session呼籲的文檔。雖然您鏈接的項目使用MongoStore和koa通用會話,但您可以簡單地用koa-redis構造函數替換該構造函數,如koa-generic-session文檔中所示。
最後,護照被初始化:
41 - app.use(passport.initialize());
42 - app.use(passport.session());
該代碼類似於使用護照快遞,因爲這是所有護照需要通過對話來管理身份驗證。