46,200원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
배포후 이미지 경로
일단 너무 힘들어서 질문올려봅니다. 참고로 저는 이 강의를 기반으로 백엔드를 구성하였습니다. 일단 저는 NEST로 백엔드를 구성하고 react로 프론트를 구성해react를 https로 nginx를 사용하여 배포하고백엔드또한 하나의 aws인스턴스 즉 백엔드와 프론트가 같은 인스턴스를 사용하고있는채 배포하였고 http로 배포했기때문에 요청에있어서 오류가 있어 nginx 디폴트 파일에서 만약 www.aaa.com/api로 들어오면 localhost:8080으로 가도록 프록시 패스도 설정해 놓았습니다. 이제 이미지를 저장할때 localhost:8080/media/annouced 에 저장하도록 하고 media는 prefix로 common/uploads으로 만들어 놨습니다. 이제 백엔드에서 이미지를 저장할때는 이 경로에 저장하고 보여줄때는 WWW.AAA.COM/API/MEDIA/이미지이름 이런식으로 프론트에서 보여주도록 하려고 하는데 도저히 이미지가 보이지않고 404 에러만 뱉어내고 있습니다. 심지어 그냥 생짜로 HTTP//locahost:8080.media/이미지 하면 프론트 배포가 https로 되어있어 접근이 refuse된다고 합니다... 어떻게 해야할지를 모르겠습니다...
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
프론드엔드 파일 관련 질문드립니다! ( 오류 )
안녕하세요 고양이 CRUD 프로젝트 듣고있는 학생입니다. 프론트 엔드 파일을 받아서 npm i 후 서버를 키려 하는데 npm run build : 에러 미 발생 ( .next 파일에 아무것도 없어요 ㅠ)npm run start : npm run dev:이렇게 에러 메시지가 노출됩니다npm run dev의 에러메시지에 react 버전 업데이트 필요해 보여서 npm install react 하면은 package.json의 정해진 버전보다 상위로 올라가서 그런가 설치가 안되더라구요 ㅠㅠ 어떻게 하면 해결이 될까요 ㅠㅠ
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
status code log가 null로 노출되요
안녕하세요 nest강의 잘 듣고있습니다.express 공부하고 본 상태인데도 많이 어렵네요 ㅠㅠ현재 nest middleware 강의듣고있는데this.logger.log(res.statusCode) 결과를 보면null로 노출되는데 혹시 안바쁘시다면 제 코드 한번 봐주셨으면 좋겠습니다 ㅠㅠ 현재 postman으로 보내는 요청은127.0.0.1:3000/cats입니다! port 3000으로 되어있습니다! <logger.middleware.ts>import { Injectable, Logger, NestMiddleware } from '@nestjs/common'; import { NextFunction, Request, Response } from 'express'; @Injectable() export class LoggerMiddleware implements NestMiddleware { private logger = new Logger('HTTP'); use(req: Request, res: Response, next: NextFunction) { // this.logger.log(req.ip, req.originalUrl, req.method); res.on('finish', () => { this.logger.log(req.ip, req.method, req.statusCode, req.originalUrl); }); next(); } }
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
Nestjs Typeorm Migration관련해서 궁굼한게 생겨서요..
수강생분들의 질문을 기다립니다! - 에러에 해당하는 질문은 "에러가 발생한 상황에 대한 충분한 설명", "에러 메세지", "에러가 난 코드 스크린샷"을 함께 첨부해주세요. - 언어에 해당하는 질문은 구글링 및 서치 후에 구체적으로 질문해주시면 좋습니다. - 간단한 진로 및 방향성에 대한 질문은 메일로 보내주세요.- 패키지 버전 관리은 실무 환경과 트랜드에 맞추어 강의를 업데이트 하고 있습니다. 강의를 그대로 따라갔는데 에러가 발생한다면 패키지 버전을 강의에서 사용하는 버전과 동일하게 맞춰주세요!- 강의 노트, QA 목록, 공지 사항을 먼저 확인해주세요.- 논리적이고 구체적인 질문은 학습 효과를 올립니다 :) 안녕하세요. 몇달전에 강의를 다 듣고, 프로젝트를 시작하게됬는데, 요즘 궁굼한게 생겨서 물어볼곳이 어디 없을까 찾다가 질문 올렸습니다. 제가 작성하고 있는 프로젝트는 github에 소스를 merge하면, Aws의 elastic beanstalk과 codepipeline을 통해 배포되는 상황입니다. 프로젝트를 진행해나가면서 DB를 마이그해야할거같아서 찾아봤는데, 자료가 많이 없더라구요. 이미 deprecate된 기능으로 작성된 예제는 좀 있었는데, 참고하기가 어려워서. 혹시 선생님께서 추천해주실만한 참고가능한 자료가 있으시다면 알려주시면 감사하겠습니다. 참고해서 개발해볼께요! "typeorm": "^0.3.7" 사용중입니다. ㅜㅜ
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
( ) <- 안에 { } 중괄호를 넣는것과 그냥 { } 중괄호를 하는 것 차이가 뭔가요?^^;
수강생분들의 질문을 기다립니다! - 에러에 해당하는 질문은 "에러가 발생한 상황에 대한 충분한 설명", "에러 메세지", "에러가 난 코드 스크린샷"을 함께 첨부해주세요. - 언어에 해당하는 질문은 구글링 및 서치 후에 구체적으로 질문해주시면 좋습니다. - 간단한 진로 및 방향성에 대한 질문은 메일로 보내주세요.- 패키지 버전 관리은 실무 환경과 트랜드에 맞추어 강의를 업데이트 하고 있습니다. 강의를 그대로 따라갔는데 에러가 발생한다면 패키지 버전을 강의에서 사용하는 버전과 동일하게 맞춰주세요!- 강의 노트, QA 목록, 공지 사항을 먼저 확인해주세요.- 논리적이고 구체적인 질문은 학습 효과를 올립니다 :) return next .handle() .pipe(map((data) => ({ })));
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
mongodb 질문
수강생분들의 질문을 기다립니다! - 에러에 해당하는 질문은 "에러가 발생한 상황에 대한 충분한 설명", "에러 메세지", "에러가 난 코드 스크린샷"을 함께 첨부해주세요. - 언어에 해당하는 질문은 구글링 및 서치 후에 구체적으로 질문해주시면 좋습니다. - 간단한 진로 및 방향성에 대한 질문은 메일로 보내주세요.- 패키지 버전 관리은 실무 환경과 트랜드에 맞추어 강의를 업데이트 하고 있습니다. 강의를 그대로 따라갔는데 에러가 발생한다면 패키지 버전을 강의에서 사용하는 버전과 동일하게 맞춰주세요!- 강의 노트, QA 목록, 공지 사항을 먼저 확인해주세요.- 논리적이고 구체적인 질문은 학습 효과를 올립니다 :) Nestjs 에서 db에 저장할 때 collectionName을 req.body의 요소로 저장하고 싶습니다. express에서는 schema를 function(prefix)로 감싸처리를하였습니다만. 여기서는 감을 못잡겠어서 질문드립니다.답변 기다리겠습니다. 감사합니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
백엔드 완성 후 프론트 연동 질문 있습니다.
안녕하세요. 고양이끼리 소통 API를 끝내면서 백엔드는 아래와 같이 다 마친 상태입니다. 그런데 웹개발 페이지를 보려면 아무래도 프론트엔드 파트가 필요할 것 같은데 깃허브의 어떤 폴더를 받아서 어디에 설치하면 되는지 나와있는 강의가 있을까요? frontend/frontenddev 폴더가 각각 있고, 또 정확한 설치 방법(npm 모듈이나 라이브러리 등)을 확인하기가 어렵네요.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
로그아웃
일단 포스트맨 헤더에 토큰이 보이지 않는것도 이상하긴한데 또 인증을 해야만 되는걸 보면 발급이 되어있기도 하고req.user하면 나옵니다 일단 근데 이걸 어떻게 해야 로그아웃을 할수있죠?
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
database 생성
MongoDB가 업데이트가 되어서 DB생성시에 권한이 있어야지만 생성이 됩니다. 전 강좌에서 Mongodb Atlas 에서 사용자를 만들때 Database Access 에서 본인에게 권한을 주어야 Database 를 만들고 CollectionName 을 넣을 수 있습니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
@injectModel 질문 있습니다
안녕하세요. mongoose에 cats 모델 생성 및 injecModel 장식자에 대해서 질문이 있습니다. @Injectable() export class CatsService { constructor(@InjectModel(Cat.name) private readonly catModel: Model<Cat>) {} export declare const InjectModel: (model: string, connectionName?: string | undefined) => (target: object, key: string | symbol, index?: number | undefined) => void; export declare const InjectConnection: (name?: string | undefined) => (target: object, key: string | symbol, index?: number | undefined) => void; 1)@InjectModel을 코드를 보면 첫 번째 인자로 model을 받던데 왜 Cat.name이라는 property가 들어가는지 궁금합니다. 2)앞에서 Cat class에서 catSchema를 생성하는 부분은 명시적으로 진행해주셨는데 model을 생성하는 부분은 service아래에서 암묵적으로 이뤄진다고 생각하면 될까요? 감사합니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
의존성주입 제가 이해한게 맞는걸까요?
module에 provider 는 공급자를 주입하는 것이며 서비스,레파지토리 등등을 사용 가능하게끔 의존성을 주입해줌2.1번을 진행할 경우 해당 공급자에 @Injectable 데코레이터가 선언되어 있어야 한다3.cats 모듈에 cats 레파지토리가 export에 선언되었고 그것은 퍼블릭 상태라는것을 의미하기에 auth 모듈에서 cats 모듈을 import 한다면 당연하게도 cats 레파지토리가 사용가능한 상태가 된다그렇다면 import를 하면 공급자 주입이 되는것이며Provider에도 선언을 하면 공급자 주입이 되는것이 맞는건가요?
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
interceptor에서 exception hanlder로 이어지는 흐름 질문 있습니다.
안녕하세요. @Controller('cats') @UseInterceptors(SuccessInterceptor) @UseFilters(HttpExceptionFilter)이 흐름에서 intercept가 없었을 경우에는 성공이든 실패든 HttpExceptionFilter를 거치게 되는 것으로 이해 했습니다. 그런데 SuccessInterceptor를 집어넣게 되면, return next.handle().pipe( map((data) => { return { success: true, data, }; }), );이 부분 때문에 success; true인 경우는 interceptor 흐름을 타게 되는 것인가요?
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
app.use(express.json()); 적용 후, SyntaxError
app.use(express.json());jsonParser기능을 하는 미들웨어 추가 이후,postman에서 request를 보냈는데,정상적으로 터미널에 출력이 되지 않습니다.무엇이 문제일까요?하단에 app.ts 코드를 첨부합니다.import * as express from "express"; import { Cat, CatType } from "./app.model"; const app: express.Express = express(); app.use((req, res, next) => { console.log(req.rawHeaders[1]); console.log("this is logging middlewre"); next(); }); //* json middleware app.use(express.json()); //* READ 고양이 전체 데이터 다 조회 app.get("/cats", (req, res) => { try { const cats = Cat; // throw new Error("db connect error"); res.status(200).send({ success: true, data: { cats, }, }); } catch (error) { res.status(400).send({ success: false, error: error.message, }); } }); //* READ 특정 고양이 데이터 조회 app.get("/cats/:id", (req, res) => { try { const params = req.params; const cat = Cat.find((cat) => { return cat.id === params.id; }); // throw new Error("db connect error"); res.status(200).send({ success: true, data: { cat, }, }); } catch (error) { res.status(400).send({ success: false, error: error.message, }); } }); //* CREATE 새로운 고양이 추가 api app.post("/cats", (req, res) => { try { const data = req.body; console.log(data); res.status(200).send({ success: true, data: {}, }); } catch (error) { res.status(400).send({ success: false, error: error.message, }); } }); //* 404 middleware app.use((req, res, next) => { console.log("this is error middleware"); res.send({ error: "404 not found error" }); }); app.listen(8000, () => { console.log("server is on..."); });
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
채팅앱 만들기 - 이벤트 설계와 기본 서비스로직 완성 에서 질문 있습니다
function helloUser() { const username = prompt('What is your name?'); socket.emit('new_user', username, (data) => {drawHelloStranger(data);});}사용자가 처음 화면에 진입했을 때에 사용자가 이름을 입력하고 나면 ‘new_user’에 해당하는 게이트웨이 로직이 실행되는 것으로 알고 있습니다.이 로직 안에서 ‘user_connected’에 대해 브로드 캐스팅을 해주고 있는데요 socket.broadcast.emit('user_connected', username);프론트엔드에서 아래와 같이 connected!라는 채팅글도 화면에 나타나야 할 것 같은데socket.on('user_connected', (username) => { drawNewChat(`${username} connected!`);});화면 진입자 입장에서는 connected!부분이 나타나지 않습니다. 왜 그런지 설명해주실 수 있을까요? 화면 진입자 또한 위 코드를 수행하고 있는데화면 진입자를 제외한 나머지 사용자에게는 connected!가 나타나지만 화면 진입자는 나타나지 않는 이유가 궁금합니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
모듈은 기본적으로 공급자를 캡슐화
안녕하세요 강의 잘보고있습니다 오늘이 1일차인데모듈은 기본적으로 공급자를 캡슐화 한다는 말이nest.js 자체에서 서로다른 패키지의 클래스가 무작위하게혼용되어 사용되는 케이스를 방지하기 위해 내장되어있는 기능일까요? 잘은 모르지만 자바나 그런곳에서 다른패키지여도 import하면 사용이 가능하지 않나요?
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
몽고 디비 커넥션 에러
몽구스 모듈에서 뭔가 자꾸 에러가있다고하는데 두번째 인수로{}이안에 인덱싱하는 키를 넣자마자 자꾸 연결이 거부된다고 뜨네요
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
[정보] PostgreSQL 셋업 강좌 부분 - pgadmin4 에러 해결 방법
pgadmin 버전 문제도 있는 것 같습니다.강의 업로드 시점2021-11-05 기준 이전에 나온 버전의 pgadmin을사용해야 에러가 안 나는 것 같습니다.pgadmin4 v5.7 버전 링크 공유 합니다.일단, 제가 했을 땐 에러는 나지 않습니다.https://www.postgresql.org/ftp/pgadmin/pgadmin4/v5.7/강의 제작 날짜2021-11-05pgadmin4 다운로드 버전2022-11-07 기준pgadmin4 이전 버전 다운로드 링크https://www.postgresql.org/ftp/pgadmin/pgadmin4/pgadmin4 v5.7 업로드 일자 - windows 기준https://www.postgresql.org/ftp/pgadmin/pgadmin4/v5.7/강의 제작 날짜 : 2021-11-05pgadmin4 v5.7 업로드 날짜 : 2021-09-09일단 비슷한 날짜의 버전을 다운로드 받아서 실행하면 에러는 나지 않습니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
populate 사용시 500에러
populate를 사용하지 않을 때에는 올바르게 동작하나, populate를 사용할 경우에 다음과 같은 에러가 발생합니다.[Nest] 50421 - 2022. 11. 07. 오전 1:04:09 ERROR [ExceptionsHandler] Schema hasn't been registered for model "comments".Use mongoose.model(name, schema)MissingSchemaError: Schema hasn't been registered for model "comments".Use mongoose.model(name, schema) comments를 삽입하는 api는 올바르게 동작하고 mongodb의 cats.comments에 올바르게 데이터가 삽입되는 것을 확인했습니다. 수많은 시간을 시도했으나 해결하지 못했습니다. 저의 github repository를 첨부합니다. 에러 해결에 도움을 주셨으면 좋겠습니다.https://github.com/Jaew00Shin/nest-study감사합니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
이미지 업로드 관련 질문
’Multer와 미디어 파일 서비스‘ 강의에서 질문이 있습니다.http://localhost:8000/media/cats/${fileName} 형식으로 나타내는데 여기서 media가 갑자기 어떻게 나온건지 궁금합니다.그리고 저의 경우에는 다음 경로로 이미지를 생성했을 때 이미지가 나타나지 않고{ "success": false, "timestamp": "2022-11-06T12:52:22.427Z", "statusCode": 404, "message": "Cannot GET /media/cats/EDIT%20&%20EXPORT_IG%20Feed%201200x12001667739124052.png", "error": "Not Found"} 이런 형식의 json이 나타납니다. 어떻게 해결해야 할지 몰라서 질문합니다. 감사합니다.
- 미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
Lightsail에 들어가지 못하면 강의 진행이 안될까요?
현재 Lightsail에 들어가지지 않는데... 이러면 강의 진행이 어려울까요...?