Browse Source

fix(server): Fix "me" query

Michael Bromley 7 years ago
parent
commit
1d01f20761
1 changed files with 7 additions and 3 deletions
  1. 7 3
      server/src/api/resolvers/auth.resolver.ts

+ 7 - 3
server/src/api/resolvers/auth.resolver.ts

@@ -1,13 +1,16 @@
 import { Args, Context, Mutation, Query, Resolver } from '@nestjs/graphql';
 import { Request, Response } from 'express';
-import { LoginMutationArgs, LoginResult, MutationResolvers, Permission } from 'shared/generated-types';
+import { LoginMutationArgs, LoginResult, Permission } from 'shared/generated-types';
 
 import { ConfigService } from '../../config/config.service';
+import { AuthenticatedSession } from '../../entity/session/authenticated-session.entity';
 import { User } from '../../entity/user/user.entity';
 import { AuthService } from '../../service/providers/auth.service';
 import { ChannelService } from '../../service/providers/channel.service';
 import { Allow } from '../common/auth-guard';
 import { extractAuthToken } from '../common/extract-auth-token';
+import { RequestContext } from '../common/request-context';
+import { Ctx } from '../common/request-context.decorator';
 import { setAuthToken } from '../common/set-auth-token';
 
 @Resolver('Auth')
@@ -63,8 +66,9 @@ export class AuthResolver {
      */
     @Query()
     @Allow(Permission.Authenticated)
-    async me(@Context('req') request: Request & { user: User }) {
-        const user = await this.authService.getUserById(request.user.id);
+    async me(@Ctx() ctx: RequestContext) {
+        const sessionUser = (ctx.session as AuthenticatedSession).user;
+        const user = sessionUser && (await this.authService.getUserById(sessionUser.id));
         return user ? this.publiclyAccessibleUser(user) : null;
     }