월 79,200원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
코드 리팩토링 이렇게 해도 되나요??
수업 내용 코드는function checkPhone(myphone) { if (myphone.length < 10 || myphone.length > 11) { console.log("에러 발생!!! 핸드폰 번호를 제대로 입력해 주세요!!!"); return false; } else { return true; } } function getToken() { let result = String(Math.floor(Math.random() * 100000)).padStart(6, "0"); console.log(result); return result; } function sendTokenToSMS(myphone, result) { console.log(myphone + "번호로 인증번호" + result + "를 전송합니다."); } function createTokenOfPhone(myphone) { const isValid = checkPhone(myphone); if (isValid === false) return; const mytoken = getToken(); sendTokenToSMS(myphone, mytoken); } createTokenOfPhone("01012345678"); // 01012345678: 인자(argument) 이렇게 되어있는데createTokenOfPhone 함수에서 isValid 상수를 꼭 선언해야하나요?? function checkPhone(myphone) { if (myphone.length < 10 || myphone.length > 11) { console.log("에러 발생!!! 핸드폰 번호를 제대로 입력해 주세요!!!"); return true; } } function getToken() { let result = String(Math.floor(Math.random() * 100000)).padStart(6, "0"); console.log(result); return result; } function sendTokenToSMS(myphone, result) { console.log(myphone + "번호로 인증번호" + result + "를 전송합니다."); } function createTokenOfPhone(myphone) { if (checkPhone(myphone)) return; const mytoken = getToken(); sendTokenToSMS(myphone, mytoken); } createTokenOfPhone("01012345678"); // 01012345678: 인자(argument) 이렇게 checkPhone()이 문제있을 때만 true를 반환하고,checkPhone()이 true일 경우 return 처리하면 코드가 더 짧아지기는 하는데수업에서 말씀하시는 협업의 가독성을 위해서 isValid라는 상수를 선언해줘야 하는지 아니면 제가 생각한 방식으로 코드를 줄여도 괜찮은건지 궁금합니다.
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
localStorage에 지역과 날씨를 저장하는 장점이 있을까요??
앞 강의 끝날때는 지연을 줄이기 위해 로컬스토리지에 저장하는걸 알아보자 하고 끝났는데,해당강의에서는 로컬스토리지 중복체크 내용을 다루고 계셔서 로컬스토리지에 저장하는 장점에 대한 궁금증이 생깁니다.강의 내용을 보면 로컬스토리지 저장된 데이터와 관련된거 먼저 보여주고, 통신 데이터가 로컬스토리지와 다르면 다른 데이터를 로컬에 저장하면서 관련된걸 보여주는식인것 같습니다.제 생각으론 같은 지역 같은 날씨, 그리고 자주 접속하거나 새로고침을 자주 한다면 좋은 방법같은데,다른 지역 이나 다른날씨 라면 처음 데이터가 오히려 잘못된걸 보여주고 늦게 바뀌는거라 그런면에서 보면 해당 기능이 장점인지가 궁금합니다.만약 큰 장점이 아니라면 로컬에 저장하고, 그 정보를 먼저보여주고, 다르다면 로컬정보 바꾸고, 해당 정보 보여주고 하는 과정의 기능이 필요한가 의문이 듭니다.아무래도 지연을 줄이기위해 로컬스토리지를 사용한다길래 무슨 방법이 있나 싶었다가 기대했던것과 다른방향이라 의문이 생겨 질문남겨봅니다.제가 잘못 이해했거나, 놓치고 있는 다른 이유가 있다면 알려주시면 감사하겠습니다.
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
14-04 Redis에서 cacheModule을 위한 @nestjs/common버전 업데이트
다른분이 질문주셨던 'app.module.ts에서 redis연결하는데 @nestjs/common에 CacheModule이 없습니다' 에 대한 답변대로 "@nestjs/common": "^9.0.0" 버전으로 업데이트해서 node_modules도 yarn install 해서 설치했습니다. yarn.lock 확인했는데 버전이 바뀌지 않아 "@nestjs/common": "9.0.0" 로 바꿔서 다시 yarn install 했구요.그런데 @nestjs/common 버전을 9.0으로 바꾸면 계속 mybackend-1(백엔드컴퓨터)에서 오류가 생깁니다. 기존버전 10.0.0이었을 때는 오류가 발생하지 않았었습니다. 실은 강의를 들으며 코드를 따라 치다 마지막에 docker-compose build후 up 했을 때 어디서 오류가 발생하는지 모르겠어서 처음부터 yarn add로 redis랑 cache-manager라이브러리 설치하는 것 부터 docker-compose build,up 하면서 확인을 해봤었는데 @nestjs/common 버전을 9.0으로 바꿨을 때 위 사진처럼 오류가 발생했습니다. package.json파일도 올려보내드립니다.@nestjs/common 버전을 바꿔야 될까요? 아님 다른 오류 원인이 있을까요..?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
객체 createBoardInput을 왜 한번 더 { } 객체로 감싸서 보내는지 궁금합니다.
boards.resolver.ts 파일에서 createBoard 함수에서 boardsService클래스에 인자를 전달할때createBoardInput 객체를 보내는데낱개로 된 writer,title,contents 도 아닌데왜 굳이 한번 더 {createBoardInput} 객체로 감싸서 보내는지 이해가 잘 되지 않습니다. @Mutation(() => String) createBoard( @Args('createBoardInput') createBoardInput: CreateBoardInput, ): string { return this.boardsService.create({ createBoardInput }); //**차이점?? return this.boardsService.create(createBoardInput); } boards.service.ts 파일에서는create({ createBoardInput }: IBoardsServiceCreate): string { //**차이점?? create(createBoardInput: CreateBoardInput): string { //1.브라우저에서 보내준 데이터 확인하기 console.log(createBoardInput.writer); console.log(createBoardInput.title); console.log(createBoardInput.contents); //2. DB에 접속 후, 데이터를 저장 => 데이터 저장했다고 가정. //3. DB에 저장된 결과를 브라우저에 응답(response) 주기. return '게시물 등록에 성공하였습니다.'; }굳이 IBoardsServiceCreate의 인터페이스를 안만들어도이미 CreateBoardInput 이라는 Class를 타입으로 적용해서 받으면 되는데createBoardInput을 왜 한번 더 { } 객체에 감싸서 보내는지 궁금합니다.
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
swagger 실행 오류
swagger 실행시 No operations defined in spec!라는 오류가 발생하는데 왜그럴가요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
CacheModule
app.module.ts에서 redis연결하는데 @nestjs/common에 CacheModule이 없는데요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
피그마에 css 코드를 볼 수 없어요.
이게 옆으로 옮겨지지 않습니다.검색해보니까 데브모드가 이제 유료화됐다고 하는데어떻게 해결해야할까요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
소셜 로그인 기능에 대해
안녕하세요 제가 고농축 강의 2개(프론트, 백엔드)를 방금 구매했는데혹시 구글,카카오,네이버 소셜 로그인(oauth2)에 대한 내용을 보려면어느 부분을 보면 될까요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
playground 오류 10-06-one-to-one
다음과 같이 playground에서 mutation한 결과 "Cannot return null for non-nullable field Product.productSalesLocation." 오류 메시지가 뜹니다. mutation안의 반환값으로 product의 column만 받을 때는 오류 없이 작동되었는데 productSalesLocation의 column을 반환하려 하면 다음과 같이 오류가 뜹니다.위 사진을 보시면 DBeaver에 product와 saleslocation에 생성한 값이 잘 입력되었지만product table에서 productSalesLocationID가 NULL값으로 되어있습니다.이 부분에 연관된 코드가 여러 파일로 나뉘어져있어 코드 어느 부분을 확인해야 하는지 알려주시면 해당 코드 캡처본을 보내드리겠습니다.
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
배포하기 챕터에서 도커컴포즈 빌드->업 후 로그 확인하면 sh: 1: nest: not found 오류
안녕하세요! 강사님 강의 잘 듣고 있습니다. 섹션 19. 17-01 강의를 따라하고 있는데 쉘에 깃클론 -> 환경변수 파일 만들고 -> 도커 컴포즈 빌드 -> 도커 컴포즈 업 이렇게 명령어를 따라갔는데 로그가 너무 오래 찍히더라구요! 무슨일인가 싶어 일단 취소하고 docker ps -a 명령어로 확인해봤더니 서버가 만들어지고 꺼진 것 같더라구요 해당 image 아이디를 가지고 docker logs 를 봤는데 위와 같은 메세지가 나옵니다. 검색해봤더니 nest/cli를 devDependencies 에서 빼고 dependencies 에 넣으라고 해서 그렇게 했는데도 오류는 동일하게 나오네요 ㅠㅠ 혹시 몰라 도커파일에 RUN npm install @nestjs/cli 를 추가해봤는데 이번에는 swagger pluginrs 가 설치되지 않았다는 오류가 나옵니다. 어떻게 하면 좋을까요??
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
데코레이터가 잘 이해가 안갑니다.
@Field 하면 어떠한 객체에 있는것에 있는 Field 를 가져다 쓸거야~ 라고 말하면서 그러한 함수를 불러오는 건가요?? ㄷ
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
정규화 엑셀자료
안녕하세요, 09-데이터 정규화 1에서 구글 시트를 사용하시는데 이 주소 어디서 접속 가능할까요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
파이널 과제 css,html질문입니다.
가입하기 버튼 누르면 에레메세지 출력하게 할때저는 wrapper바깥으로 내용이 빠져 나가는데어떻게 해야 wrapper크기도 같이 늘어나게 하는건가요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
mongoDB접속 관련 문의
04-05 ODM - mongoDB접속 강의에서 docker-compose build했을 때 > [mybackend 5/6] RUN yarn install:0.132 yarn install v1.22.190.150 [1/4] Resolving packages...0.176 [2/4] Fetching packages...3.678 error mongoose@8.1.0: The engine "node" is incompatible with this module. Expected version ">=16.20.1". Got "14.21.3"3.678 error Found incompatible module.3.678 info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.------failed to solve: process "/bin/sh -c yarn install" did not complete successfully: exit code: 1위와 같이 오류가 떠요. node버전이 mongoose버전과 맞지 않다고 하는데 기존 node를 삭제하고 오류에서 말한 16.20.1버전으로 새로 설치해야하는 건가요? 재 설치하면 기존에 학습했던 코드들에 영향을 받진 않나요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
ftp 서버 문의 입니다
안녕하세요. 우분투 서버에서 ftp 서버을 사용하고 있습니다.nestjs-ftp 을 사용해서 다운로드 하면 upload, download는 가능한데(우분투 서비 컴퓨터에) upload만한 위치 주소만 링크를 시키고 싶은데 안됩니다.aws같이 다운로드 url주소만 가져올수 있는 방법이 있을까요?frontend에서 이미지를 등록을 할려고 하니 url주소가 없어서 등록이 안됩니다.aws을 사용할려고도 생각해 보았으나 사진이 많이 업로드 되어야 해서 비용적인 부담이 있습니다.
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
figma에서 code가 보이질 않아요.
figma에서 클릭을 해서 눌러도 옆에 properties/comment/Export 이 칸에서 code가 따로 보이지 않습니다. 어떻게 된건가요?
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
아니 수업중에 뭘 먹고 있으면 어떡해요;
어이없네.. 쿰척쿰척 먹는걸 왜 돈낸 강의에서 들어야함;; 진짜 짜증나네진짜
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
google 로그인 문제
안녕하세요. 구글 로그인시 authService에 setRefreshToken 함수를 불러오면서 setHeader오류가 발생합니다. @UseGuards(GqlAuthGuard('google')) @Get('google') async socialGoogleLogin( @Req() req: Request & IOAuthUser, @Res() res: Response & IContext, ) { let user = await this.usersService.findOne({ findOneUserInput: { email: req.user.email }, }); if (!user) { user = await this.usersService.create({ createUserInput: { email: req.user.email, password: req.user.password, name: req.user.name, }, }); } await this.authService.setRefreshToken({ user, context: res, }); res.redirect('http://localhost:5500/social-login.html'); } async setRefreshToken({ user, context }: IAuthServiceSetRefreshToken) { const refreshToken = await this.jwtService.sign( { sub: user.id }, { secret: 'coex', expiresIn: '4h' }, ); context.res.setHeader( 'set-Cookie', `refreshToken=${refreshToken}; path=/;`, ); } @Injectable() export class JwtRefreshStrategy extends PassportStrategy(Strategy, 'refresh') { constructor() { super({ jwtFromRequest: (req) => { const cookies = req.headers.cookie; const refreshToken = cookies.replace('refreshToken=', ''); return refreshToken; }, secretOrKey: 'coex', }); } async validate(payload: any) { return { id: payload.sub }; } } front error{statusCode: 500,message: "Internal server error"}server error[Nest] 90403 - 2024. 01. 10. 오후 7:10:04 ERROR [ExceptionsHandler] Cannot read properties of undefined (reading 'setHeader')TypeError: Cannot read properties of undefined (reading 'setHeader')
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
port 가 계속 살아있는 문제.
전에 했던 포트가 계속 살아있네요. 왜 그런거죠..? 나갈때 ctrl+z했는데.
- 해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
섹션2 css기본과 싸이월드 실습 1탄
'css정렬' 강의에서 마지막에 회원가입을 숙제로 내주셨는데그거에 대한 자세한 정보들을 어디서 얻을 수 있을까요?