묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
async, await를 사용하는 이유?
product.service.ts에서 create, findOne, findAll을 만들때는 async, await를 사용하지 않았습니다. 그리고 create 만들 때 nest에서는 이걸 호출하는 곳(resolver)에서 자동으로 기다리고 있기 때문이라고 하셨는데요.다만, 시간이 걸리기 때문에 Return type은 Promise<Product>로 했고요. 근데 update, delete를 하실때는 async, await를 사용하셨는데요.어떤 이유가 있을까요??
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
getStaticProps 두개의 질문있습니다
1.getStaticProps를 about 페이지에 사용하셨는데빌드를 하고 나서 유저의 게시글 개수 팔로우 개수 팔로워 개수가 바뀔 수 있잖아요?근데 getStaticProps를 사용했고빌드시 html로 만들어 저장하고 그 html을 브라우저로 전달하기 때문에DB의 데이터가 바뀌어도브라우저 화면의 about페이지에는 빌드시의 html이 보여지게 되서 데이터 갱신이 안되는데 맞나요?? 2.그리고 html로 바뀌는 대상이 about페이지라면about컴포넌트의 자식 AppLayout의 자식 UserProfile 컴포넌트에는 동적인 데이터가 쓰이기 때문에 말이 안되는 것 같은데 html로 바뀌는 대상이 정확히 뭔지 알 수 있을까요??
-
미해결MERN STACK 커뮤니티 : 시작부터 배포까지 알려주는 React
깃허브
깃허브에 코딩한거 올려주시나요?하신다면 링크 알 수 있을까요?
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
NCP배포도 동일하게 하면 될까요?
[제로초 강좌 질문 필독 사항입니다]질문에는 여러분에게 도움이 되는 질문과 도움이 되지 않는 질문이 있습니다.도움이 되는 질문을 하는 방법을 알려드립니다.https://www.youtube.com/watch?v=PUKOWrOuC0c안녕하세요! 초보 개발자입니다 회사에서 NCP를 활용하여 배포 하려고하는데 강좌에 나오는 AWS 배포방식과 동일하게 진행하면 되는걸까요.,? 물어볼곳이 없어 질문드립니다
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
안녕하세요 선생님, 제가 강의를 다듣고 난후 코드랑 학습자료보고 복습식으로 공부하는게 좋을것 같아서요, 혹시 수업시간에 작성한 예제코드들은 어디서 받을수 있나요?
안녕하세요 선생님, 제가 강의를 다듣고 난후 코드랑 학습자료보고 복습식으로 공부하는게 좋을것 같아서요, 혹시 수업시간에 작성한 예제코드들은 어디서 받을수 있나요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
안녕하세요!
훈훈한 Javascript섹션4-for문과 while문마지막 예제에서let i = 0; while(i < 10) { console.log(i) i = i + 1 }결과 10이 출력되는건 반복 횟수이고 0~9 까지 출력이 맞는거 같은데 확인 부탁드립니다!
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
HttpExceptionFilter에 단순 HttpException 예외처리도 필요하지 않나요?
HttpExceptionFilter에서 에러처리시exception.getStatus() 로 err 변수값을 넣을떄HttpException 의 경우 string 타입BadRequestException, UnauthorizedException 와 같이 미리 정의된 경우 { message: any; statusCode: number } 타입class-validator의 경우 { error: string; statusCode: 400; message: string[] } 타입의 3가지 형태가 되는데이번강의에서 string 타입 자체를 제거하셧는데 HttpException 를 사용하게되면 에러 메시지가 제대로 안 날라 가게 됩니다. class-validator를 도입하면서 HttpException 케이스를 제거 하신거 같은데 해당 예외도 포함은 되어있어야 하지 않나요?class-validator 가 완전히 HttpException 를 대체하게 한다면 HttpException를 사용못하게 막을 방법이 있을까요?import { ExceptionFilter, Catch, ArgumentsHost, HttpException, } from '@nestjs/common'; import { Response } from 'express'; @Catch(HttpException) export class HttpExceptionFilter implements ExceptionFilter { catch(exception: HttpException, host: ArgumentsHost) { const ctx = host.switchToHttp(); const response = ctx.getResponse<Response>(); const status = exception.getStatus(); const err = exception.getResponse() as | string | { message: any; statusCode: number } | { error: string; statusCode: 400; message: string[] }; //class-validator if (typeof err !== 'string' && err.statusCode === 400) { return response.status(status).json({ success: false, code: err.statusCode, data: err.message, }); } //HttpException if (typeof err == 'string') { return response.status(status).json({ success: false, code: status, data: err, }); } //BadRequestException, UnauthorizedException return response.status(status).json({ success: false, code: status, data: err.message, }); } }
-
미해결[웹 개발 풀스택 코스] Node.js 프로젝트 투입 일주일 전 - 기초에서 실무까지
오류가 어디서 나는지 알수가없습니다.ㅠ
뭐가 문제일까요 ??
-
미해결습관부터 바꿔주는 Node.js & Express 기초
Swagger 설정 문의
스웨거에서 paths 가공할 때 강의에서 path를 아래 코드처럼 /detail/:id 이렇게만 작성을 하셨는데, /users는 어디에서 추가를 해야하는지 궁금합니다.export const getUserSwagger = { '/detail/:id': { get: { tags: ['User'], summary: '유저 상세 조회',라우터 분리할 때 /users는 UserController에 path에 추가해서 설정을 했는데, 스웨거에서는 어떻게 해야하나요? 아니면 저 부분을 '/users/detail/:id' 이렇게 풀로 작성해야 하나요?
-
해결됨[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
16.1 S3 , 적용후 로그인시 에러 발생
S3 서비스 진행 중, 로컬에서 실행하면 페이지는 출력되는데 로그인시도를 하면 저런 메시지가 출력됩니다. 제가 보기엔 레디스 연결과 문제가 있는 것 같은데 어떻게 접근하면 좋을까요?
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
module.ts에서도 process.env 대신 configService를 사용할수 있나요?
이전강의떄 app.module.ts에서 외부에서 Env값을 불러오는 방법도 있다는것을 알려주셧는데 const getEnv = async () => { //외부에 저장된 Env값 // const response = await axios.get("/loadEnv") // return response.data; return { DB_PASSWORD: '~~~', }; }; @Module({ imports: [ ConfigModule.forRoot({ isGlobal: true, load: [getEnv] }), UsersModule, ChannelsModule, DmsModule, WorkspaceModule, TypeOrmModule.forRoot({ type: 'mariadb', host: process.env.DB_HOST, port: parseInt(process.env.DB_PORT, 10), username: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_DATABASE, entities: ['entities/*.js'], // autoLoadEntities: true, // TypeOrmModule.forFeature 내의 entities를 읽어서 자동 연결 synchronize: true, logging: true, keepConnectionAlive: true, //핫리로딩시 연결종료 방지 charset: 'utf8mb4', }), ], controllers: [AppController], providers: [AppService, ConfigService], }) export class AppModule implements NestModule { configure(consumer: MiddlewareConsumer) { consumer.apply(LoggerMiddleware).forRoutes('*'); } } @Injectable() export class AppService { constructor(private configService: ConfigService) {} getHello() { return this.configService.get('PORT'); } }제가 이해한 바에 따르면 app.module.ts 에서 ConfigModule을 임포트하여 app.service.ts에서 ConfigService를 사용하여 외부 env값을 사용할수 있는데 app.module.ts 에서도 자체적으로 외부env를 이용하여 db설정값을 지정할수 있는지 궁금합니다.
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
백엔드부터 해도 되나요???
git에서 소스 안받고 강의보면서 직접 타이핑해가면서학습하려고 합니다.백엔드 강의부터 진행해도 문제 없을까요?
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
mysql의 다른 schema(database) 를 참조하는 경우에는 어떻게 ...
시퀄라이즈로 모델 구성시 하나의 database 를 참조하는 방식인데요 서브쿼리로 다른 database(mysql 의 schema)의 테이블을 참조하는 경우에는 다음과 같이 query() function으로 풀어서 요청하기도 하는가요..? db.sequelize.query('select a.name, b.score from schemaA.Users a Left join schemaB.Score B on a.userid=b.userid')
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
redux 상태값 문의드립니다
진도가 잘 안나가네요아직 redux에서 헤매고 있습니다. 페이지 이동 시 버튼을 통해 이동 시에는 state 값이 유지가 되는데 직접 localhost:3060/profile 를 타이핑해서 들어가게 되면 상태값이 유지가 되지 않습니다.원래 그런걸까요..?<Menu.Item key="home"><Link href="/"><a>노드버드</a></Link></Menu.Item> <Menu.Item key="profile"><Link href="/profile"><a>프로필</a></Link></Menu.Item> 유지가 되게 해주려면 어떤 방식으로 가져가야 할까요..?
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
터미널 명령어에서 특수문자를 일반 택스트로 인식시키는 방법이 있나요?
mysql의 비밀번호를 자동생성을 통해 생성해서 ~+kmisB1[@l1&FH 로 설정해 놓았는데 아래 명령어에서 특수문자로 인해 인식이 정상적으로 못하는것 같습니다. & 앞에 \를 추가하여 ~+kmisB1[@l1\&FH 로 시도해도 인식이 되지 않았습니다.명령어 : npx typeorm-model-generator -h localhost -d sleact -u root -x ~+kmisB1[@l1&FH -e mysql 에러 : 필수 인자를 받지 못했습니다: e'FH'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
msa환경에서 서버끼리는 gRPC로 통신을 하는 형태로 만들어보려고 합니다.
안녕하세요. 이번에 신입으로 입사한 주니어 개발자입니다.입사한 회사에서 msa환경에서 서버끼리는 gRPC통신를 이용해서 통신을 하고 클라이언트와는 게이트웨이를 통해서 통신하는 프로젝트를 nest.js를 이용해서 만드는 온보딩 미션을 주셨는데요.공식문서를 계속 읽어보고 하는데 아직 gRPC와 msa환경을 처음 접해서 그런가 만들어보려니 감이 잡힐거같으면서도 어렵네요.먼저 nest.js의 기본적인 http로 통신하는 시스템을 만들어보고 그 이후에 리팩토링해서 요구조건을 만족하게 만드는게 나을까요?
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
form태그의 enctype="multipart/form-data" 질문
이미지 형식을 보낼 때에는 form태그로 보내는 것이 아니라 이벤트 리스너를 통해 폼 데이터에 넣어서 보내는데 굳이 form태그의 enctype속성으로 "multipart/form-data"를 할당할 필요가 있었는지 궁금합니다.
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
슬랙 참여주소가 작동하지않습니다.
확인 부탁드립니다~
-
미해결코로나맵 개발자가 알려주는 React + Express로 지도서비스 만들기 (Typescript)
[참고] 서버 보일러 플레이트에 axios 없네요~
8.26.기준 강의자료 서버 보일러 플레이트에 axios 없네요~ npm install axios모두 화이팅~~
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
docker volume 설정 시 mount 에러
영상에서 알려주신대로 파일을 설정하고 실행하면 다음과 같은 에러가 발생합니다.잘 안보일 수 있어서 아래에 적습니다.Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/e/Study-App/codecamp-backend/class/section04/04-07-docker-compose-with-mongoose-board2/backend/index.js" to rootfs at "/myfolder/index.js": mount /run/desktop/mnt/host/e/Study-App/codecamp-backend/class/section04/04-07-docker-compose-with-mongoose-board2/backend/index.js:/myfolder/index.js (via /proc/self/fd/9), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type 결국 경로를 못찾는다는 얘기로 이해했는데요.그래서 yaml파일을 다음과 같이 고쳐봤습니다. 그러면 실행이 되는 것처럼 나오지만 이러한 에러가 발생합니다. 근데 이상한건 다른 터미널에서 docker ps를 실행하면 다음과 같이 하나만 실행된 것처러럼 나오는데... 막상 현재 실행되고 있는 터미널에서 ctrl + c를 하면 다음과 같이 2개가 중지되는걸로 나옵니다. 어디서부터 잘못된 걸까요 ㅠ_ㅠ