From de17e14f1520710eaca97bca92637b2cc6b451ad Mon Sep 17 00:00:00 2001 From: Harry Chen Date: Fri, 2 Feb 2024 23:43:31 +0800 Subject: [PATCH] fix: isAuthenticated missing this (#3617) --- packages/passport/index.d.ts | 8 ++++---- packages/passport/src/passport/passport.service.ts | 2 +- .../test/fixtures/passport-express/src/test.controller.ts | 2 +- .../test/fixtures/passport-web/src/test.controller.ts | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/passport/index.d.ts b/packages/passport/index.d.ts index 12d965df5f45..c49078b4fa8a 100644 --- a/packages/passport/index.d.ts +++ b/packages/passport/index.d.ts @@ -16,7 +16,7 @@ declare module '@midwayjs/koa/dist/interface' { isAuthenticated(): boolean; isUnauthenticated(): boolean; login(): Promise; - logout(): void; + logout(): Promise; } } @@ -28,7 +28,7 @@ declare module '@midwayjs/web/dist/interface' { isAuthenticated(): boolean; isUnauthenticated(): boolean; login(): Promise; - logout(): void; + logout(): Promise; } } @@ -40,7 +40,7 @@ declare module '@midwayjs/faas/dist/interface' { isAuthenticated(): boolean; isUnauthenticated(): boolean; login(): Promise; - logout(): void; + logout(): Promise; } } @@ -50,7 +50,7 @@ declare module '@midwayjs/express/dist/interface' { // These declarations are merged into express's Request type login(user: any, done: (err: any) => void): void; login(user: any, options: any, done: (err: any) => void): void; - logout(): void; + logout(): Promise; isAuthenticated(): boolean; isUnauthenticated(): boolean; } diff --git a/packages/passport/src/passport/passport.service.ts b/packages/passport/src/passport/passport.service.ts index 7f3fc1fdb089..89d027296d48 100644 --- a/packages/passport/src/passport/passport.service.ts +++ b/packages/passport/src/passport/passport.service.ts @@ -445,7 +445,7 @@ export function PassportMiddleware( }; req.isAuthenticated = () => { const property = this.passport.getUserProperty(); - return !!this[property]; + return !!req[property]; }; req.isUnauthenticated = () => { return !req.isAuthenticated(); diff --git a/packages/passport/test/fixtures/passport-express/src/test.controller.ts b/packages/passport/test/fixtures/passport-express/src/test.controller.ts index 112e1d26564b..812a90293800 100644 --- a/packages/passport/test/fixtures/passport-express/src/test.controller.ts +++ b/packages/passport/test/fixtures/passport-express/src/test.controller.ts @@ -12,7 +12,7 @@ export class TestPackagesController { this.req.user?.username === 'admin' && this.req.user?.password === '123' ) { - return 'success'; + return this.req.isAuthenticated() ? 'success': 'fail'; } return 'fail'; diff --git a/packages/passport/test/fixtures/passport-web/src/test.controller.ts b/packages/passport/test/fixtures/passport-web/src/test.controller.ts index d0b0584ba93b..13c386d1644d 100644 --- a/packages/passport/test/fixtures/passport-web/src/test.controller.ts +++ b/packages/passport/test/fixtures/passport-web/src/test.controller.ts @@ -11,7 +11,7 @@ export class TestPackagesController { this.ctx.state.user?.username === 'admin' && this.ctx.state.user?.password === '123' ) { - return 'success'; + return this.ctx.isAuthenticated() ? 'success': 'fail'; } return 'fail';