From a8adfcd298cdd14688ab26f7670b3594caf66265 Mon Sep 17 00:00:00 2001 From: NicoDora Date: Fri, 22 Sep 2023 17:04:49 +0900 Subject: [PATCH] =?UTF-8?q?refactor(#10):=20auth=20=ED=8C=8C=EC=9D=BC=20?= =?UTF-8?q?=EC=A0=95=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app.module.ts | 15 +++++++-------- src/auth/{ => controllers}/auth.controller.ts | 4 ++-- src/auth/modules/auth.module.ts | 13 +++++++++++++ src/common/auth/naver.strategy.ts | 5 ++--- 4 files changed, 24 insertions(+), 13 deletions(-) rename src/auth/{ => controllers}/auth.controller.ts (86%) create mode 100644 src/auth/modules/auth.module.ts diff --git a/src/app.module.ts b/src/app.module.ts index 5813dc4..d3ee386 100644 --- a/src/app.module.ts +++ b/src/app.module.ts @@ -1,3 +1,4 @@ +import { AuthModule } from './auth/modules/auth.module'; import { CommentModule } from './comments/comment.module'; import { UserModule } from './users/user.module'; import { Module, NestModule } from '@nestjs/common'; @@ -13,19 +14,15 @@ import { FriendModule } from './friend/friend.module'; import { NoticeModule } from './notice/notice.module'; import * as mongoose from 'mongoose'; -import { NaverStrategy } from './common/auth/naver.strategy'; -import { AuthService } from './auth/auth.service'; -import { AuthController } from './auth/auth.controller'; -import { KakaoStrategy } from './common/auth/kakao.strategy'; -import { UserRepository } from './users/repository/user.repository'; @Module({ imports: [ + AuthModule, CommentModule, UserModule, TypeOrmModule.forRoot({ ...TypeORMconfig, // TypeORM 설정 객체 확장 - synchronize: false, // DB 동기화 여부 설정 + synchronize: true, // DB 동기화 여부 설정 // entities: [Image], // Image 엔티티 추가 }), // TypeOrmModule.forFeature([Image]), @@ -40,8 +37,10 @@ import { UserRepository } from './users/repository/user.repository'; FriendModule, NoticeModule, ], - controllers: [AuthController,], - providers: [AuthService, UserRepository, NaverStrategy, KakaoStrategy, S3Service], + controllers: [], + providers: [ + S3Service, + ], }) export class AppModule implements NestModule { private readonly isDev: boolean = diff --git a/src/auth/auth.controller.ts b/src/auth/controllers/auth.controller.ts similarity index 86% rename from src/auth/auth.controller.ts rename to src/auth/controllers/auth.controller.ts index 8f93396..c2be5ce 100644 --- a/src/auth/auth.controller.ts +++ b/src/auth/controllers/auth.controller.ts @@ -1,12 +1,12 @@ import { AuthGuard } from '@nestjs/passport'; -import { AuthService } from './auth.service'; +import { AuthService } from '../auth.service'; import { Controller, Get, Req, UseGuards } from '@nestjs/common'; @Controller() export class AuthController { constructor(private readonly authService: AuthService) {} - @Get() + @Get('auth/naver') @UseGuards(AuthGuard('naver')) async naverAuth(@Req() req) { diff --git a/src/auth/modules/auth.module.ts b/src/auth/modules/auth.module.ts new file mode 100644 index 0000000..6e00104 --- /dev/null +++ b/src/auth/modules/auth.module.ts @@ -0,0 +1,13 @@ +import { Module } from '@nestjs/common'; +import { AuthController } from '../controllers/auth.controller'; +import { AuthService } from '../auth.service'; +import { UserRepository } from 'src/users/repository/user.repository'; +import { NaverStrategy } from 'src/common/auth/naver.strategy'; +import { KakaoStrategy } from 'src/common/auth/kakao.strategy'; + +@Module({ + imports: [], + controllers: [AuthController], + providers: [AuthService, UserRepository, NaverStrategy, KakaoStrategy], +}) +export class AuthModule {} diff --git a/src/common/auth/naver.strategy.ts b/src/common/auth/naver.strategy.ts index b3066d3..d7bdca2 100644 --- a/src/common/auth/naver.strategy.ts +++ b/src/common/auth/naver.strategy.ts @@ -1,6 +1,5 @@ import { Injectable } from '@nestjs/common'; import { PassportStrategy } from '@nestjs/passport'; -import { VerifyCallback } from "jsonwebtoken"; import { Strategy } from 'passport-naver-v2'; import * as dotenv from 'dotenv'; @@ -16,7 +15,7 @@ export class NaverStrategy extends PassportStrategy(Strategy, 'naver') { }); } - async validate(accessToken: string, refreshToken: string, profile: any, done: VerifyCallback) { + async validate(accessToken: string, refreshToken: string, profile: any) { const { provider, nickname, profileImage, gender, email } = profile; const user = { @@ -28,6 +27,6 @@ export class NaverStrategy extends PassportStrategy(Strategy, 'naver') { } console.log(user); - done(null, user); + return user; } }