묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
섹션2 css기본과 싸이월드 실습 1탄
'css정렬' 강의에서 마지막에 회원가입을 숙제로 내주셨는데그거에 대한 자세한 정보들을 어디서 얻을 수 있을까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
Part2 에 대해서 궁금합니다.
Part 1 에서 웬만한 건 다 배우는 것 같은데 Part 2 는 어떤 내용이고 언제쯤 공개되나요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
restoreAccessToken 질문입니다.
열심히 보고 있습니다.restoreAccessToken을 플레이그라운드에서 테스트 하면 에러 코드"errors": [ { "message": "Unauthorized", "locations": [ { "line": 2, "column": 3 } ], "path": [ "restoreAccessToken" ], "extensions": { "code": "UNAUTHENTICATED", "stacktrace": [ "UnauthorizedException: Unauthorized", 왜 접근을 하지 못하는 걸까요?나머지는 정상 작동합니다. 참고로 Apollo Sandbox을 사용하고 있습니다.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
올려두신 github 레포지토리를 그대로 실행 시 오류가 발생합니다.
맨 처음 클론하고 나면 chats.gateway.ts에서 socket.user라는 프로퍼티를 찾을 수 없다는 에러가 뜨고 있습니다.에러가 나는 로직을 전체 주석시키고 나면, CommentsService에서 CommonService의 의존성을 찾을 수 없다는 에러가 뜹니다. ("Nest can't resolve dependencies of the CommentsService (CommentsModelRepository, ?)")CommonSerivce 의존성을 해결하고 나니 "TypeORMError: Entity metadata for UsersModel#postComments was not found." 라는 에러가 뜹니다.위 에러를 고치고 나니 또 다른 에러가 뜨고 있습니다.혹시 github 레포지토리 clone 해보셨을 때 문제 없는지 확인 가능 하실까요?
-
해결됨[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
맥북 pro m1칩 권한 문제
파일 '/Users/제이름입니다/Desktop/book_lecture/inflearn/code-factory/typeorm_test/docker-compose.yaml'(NoPermissions (FileSystemError): Error: EACCES: permission denied, open '/Users/bonhyunkoo/Desktop/book_lecture/inflearn/code-factory/typeorm_test/docker-compose.yaml')을(를) 쓸 수 없음 docker-compose.yaml 파일 생성시 나타나는 에러입니다. 환경은 mac pro m1칩이고 vscode에서 실습 중입니다.사실 원래는 문제 없다가 뒤늦게 mac os 환경세팅 강의에 나오는 sudo corepack enable 명령어 입력 후 권한 문제가 계속 나오네요위의 도커 파일 뿐만 아니라 typeorm을 비롯한 라이브러리 설치시에도 항상 sudo를 입력해줘야하는 등 문제가 계속 발생하는데 왜 그런걸까요? 해결법은 뭔가요? sudo corepack enable이란 명령어는 어떤 의미를 가지고 있는 건가요?밑은 라이브러리 설치시 나타나는 에러입니다.yarn add @nestjs/typeorm typeorm pgyarn add v1.22.21[1/4] 🔍 Resolving packages...[2/4] 🚚 Fetching packages...error Error: EACCES: permission denied, unlink '/Users/제이름입니다/Desktop/book_lecture/inflearn/code-factory/typeorm_test/node_modules/.yarn-integrity'info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.
-
미해결따라하며 배우는 NestJS
강의 자료 관련해서 질문있습니다.
윈도우에서 강의 자료를 열람하기가 힘들어서 그런데 혹시 .DS_Store 파일 말고, 그냥 pdf 자료를 공유해 주시는건 힘들지 문의드립니다
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
playground에서 코딩할 떄 팁 없나요?
fetchProduct,updateProduct,deleteProduct등 플레이 그라운드에서 코딩할 때mutation{ updateProduct(productId:"7a40df24-4feb-43d0-b07e-c5855437a441" updateProductInput:{ name:"가나" }) query{ fetchProducts{ id name description }} 중괄호,소괄호 쓰는데어떤 위치에서 중괄호,소괄호를 사용해야하는지 팁 없나요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
정렬에 대한 질문
안녕하세요,postman으로 테스트해보다가 궁금한것이 있어 질문 올려요. 질문 전에 base-pagination.dto.ts 에서order__createdAt의 기본값은 없앤 상태일 때 likeCount DESC 같은것으로 정렬한다면, where__id__... 를 어떻게 해야할지.. 테스트해보니 생각한것처럼 나오지 않아서요.커서 페이지네이션은 이렇게 쓰면 안되는것인지.. 궁금합니다. 예) 배달비 순으로 정렬, 금액 순으로 정렬 이런것들이요. 감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
10-08 product.service.ts에 final(), findOne에
productTags는 왜 relations에 넣지 않는건가요? 자동으로 되는건가요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
playground 관련 질문드립니다.
안녕하세요.GraphQL로 서버를 개발하면, 프론트 개발자는 Playground를 보고 API 사양을 확인하게 될 것 같은데요..!받아올 수 없는 값을 Playground에서 미리 알려줄 수 있는 방법이 없는지 궁금합니다.예를 들어, 아래와 같이 createProduct를 할 때, productTags나 productCategory는 name을 받으려 하면 에러가 발생하잖아요.근데, Playground의 DOCS에는 name 타입도 받아올 수 있는 것처럼 확인이 되는데, 오류를 받아보기 전에 해당 값은 받아올 수 없는 값이라는 걸 알려줄 수 있는 방법이 있을까요..?
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
하위 테이블이 되는 엔티티에서 외래키 컬럼을 별도로 작성하는 이유가 궁금합니다
강의에서 OneToMany, ManyToOne 관계인 엔티티들을 보면/entity/Users.ts// ... @Entity({ schema: 'sleact', name: 'users' }) export class Users { @PrimaryGeneratedColumn({ type: 'int', name: 'id' }) id: number; // ... @OneToMany( () => WorkspaceMembers, (workspacemembers) => workspacemembers.User, ) WorkspaceMembers: WorkspaceMembers[]; // ... }/entity/WorkspaceMembers.ts@Entity('workspacemembers', { schema: 'sleact' }) export class WorkspaceMembers { // ... @Column('int', { primary: true, name: 'UserId' }) UserId: number; // ... @ManyToOne(() => Users, (users) => users.WorkspaceMembers, { onDelete: 'CASCADE', onUpdate: 'CASCADE', }) @JoinColumn([{ name: 'UserId', referencedColumnName: 'id' }]) User: Users; // ... }WorkspaceMembers 엔티티에서 UserId 컬럼을 별도로 작성하신 뒤@JoinColumn 데코레이터에서 Users 엔티티에서 가져온 'id'컬럼을 본 엔티티에서 'UserId' 컬럼으로 사용하겠다고 지정하셨는데요 이외에도 다른 일대다, 다대일 관계인 엔티티 중 다대일 파일들에 모두 '(상위테이블)Id' 이런 식으로 컬럼을 직접 설정하셨더라구요.이 이유가 무엇인지에 대해서 질문드리고 싶어서 글 작성합니다. 개인적으로 연습하면서 TypeORM 공식문서나 깃북을 확인했을때는 관계에 대해서는 지정을 하되,하위 테이블에선 별도로 외래키에 대한 컬럼까지는 작성하지 않았는데요.제가 작업중인 환경에서 테스트할 때도user.entity.ts// ... @Entity({ name: 'Users' }) export class Users { @PrimaryGeneratedColumn({ type: 'int', name: 'id' }) id: number; // .. @OneToMany(() => Posts, (post: Posts) => post.user, { cascade: true, }) post: Posts[]; }posts.entity.ts// ... @Entity({ name: 'Posts' }) export class Posts { @PrimaryGeneratedColumn({ type: 'int', name: 'id' }) id: number; // @Column({ type: 'int' }) // userId: number; // ... @ManyToOne(() => Users, (user: Users) => user.post, { onDelete: 'CASCADE', }) // 외래키 정보 // @JoinColumn([ // { // referencedColumnName: 'id', // 상대방 컬럼 // name: 'userId', // 여기서 쓸 컬럼 // }, // ]) user: Users[]; }이 상태에서 DB와 테이블을 생성했을때 외래키가 되는 'userId'가 생성되는 것 확인하였습니다.단 이 상태에서는 서비스 단에서 리포지터리로 데이터를 입력할 수가 없었습니다. 이 부분은 JoinColumn 데코레이터가 있어도 결과는 같았습니다. 혹시 자동적으로 만들어지는 외래키 컬럼에는 서비스에서 typeorm 사용해도직접적으로 데이터를 집어 넣지 못하기 때문에,외래키 컬럼을 직접 만들어주고 JoinColumn 데코레이터 사용해서 명시적으로 지정을 해줘야만 한다 라고 생각하면 될까요? 제가 제대로 이해한 것이 맞을까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
파이프 관련 질문있습니다.
위 예제에서 value의 타입이 string 혹은 number가 아니라 any인 이유가 궁금합니당..
-
해결됨[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
jetbrain에서 디버거 사용
안녕하세요, 젯브레인 사용중이라 혹시 도움될까싶어 글 남겨요.버전에 따라 조금씩 다를지 모르겟는데, 우측 상단에Current File > Edit Configurations... 클릭 Run/Debug Configurations 화면에서+ 또는 Add new... 클릭NodeJS 선택 후 Name은 Debug로 입력 그리고 아래 Configuration 탭에서 Node Parameters: node_modules/@nestjs/cli/bin/nest.js start --debug --watchJavascript File: src/main.ts그리고 Apply, OK 로 설정 완료 후 처음 Current File 부분이 Debug로 변경되어있는것 확인 후, 우측 실행버튼 클릭그러면 하단에 실행 화면이 나오는데, 스크롤 위로 올려보면 ws://127.0.0.1:..../aaaa-bbbb-cccc-dddd 링크 클릭 > Threads & Variables 탭 누르면나머진 강의하고 똑같이 나오니 강의 설명으로 참고하시면 돼요
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
find() 에서 password를 숨길때 사용하는 어노테이션 옵션 차이
안녕하세요.아래 두가지 어노테이션 차이가 궁금합니다.@Column({select: false}) password@Exclude() password차이가 뭔가요?둘중 어느것을 써도 find() 에서 password 를 숨겨지는거같은데 용도 차이가 궁금합니다.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
NestJS Mapped types에 관해 궁금한게 있습니다
NestJS 공식문서에 강의대로 여러가지 Mapped types들이 있더라고요.https://docs.nestjs.com/openapi/mapped-types#pick 강의에서는 PickType(UsersModel, [ 'nickname', 'email', 'password', ]) {이렇게 사용 되는데PickType(CreateCatDto, ['age'] as const)공식 문서에서는 as const 이게 붙더라고요 무슨 차이가 있는 걸까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
강의를 보고 나니 Restful한 api를 설계 하기 위해선
강의를 보고 나니 Restful한 api를 설계 하기 위해선Profile 에 해당하는 프로퍼티가name: string;age: number;address: string;있을때 1. patch[client 요청]{ name: 'codefactory', age: 98000, address: '판교'}프로퍼티를 전체 수정 또는 생성 한다. 해당 resource id값에 해당하는 데이터가 없으면 에러를 던지지 않고 새로 생성한다.모든 프로퍼티를 기입 해야하고 전체 수정이 발생하거나 새로 생성 된다.2. patch[client 요청]{ name: 'codefactory2',}수정 하고자 하는 프로퍼티만 기입해당 resource id값에 해당하는 데이터가 없으면 찾을 수 없다는 error를 던져준다. 제가 이해한것을 정리 해보았고, 궁금한점을 한가지 질문을 적어 보자면그렇다면 만약, 모든 프로퍼티를 보내지만, 데이터가 없을때 새로 생성하지 않고 에러를 던지는 api가 필요하면 이것은 put인가요 patch 일까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
용어에 대해 궁금한게 있어서 질문 남겨보아요
java와 spring을 공부 할때 당시에 사용 했던게 Annotation이라는 용어를 사용 했던걸로 기억합니다.(@Controller, @Service 등) 근데 typescript와 Nestjs를 검색 해보니까 Annotation이라는 용어보다는 Decorator라는 용어로 많이 사용하는것 같던데 Annotation vs Decorator가 같은거라고 보면 될까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
JWT refreshToken 쿠키
Client 에서 Refresh Token 을 localStorage 보다는 cookie 에 저장을 하는게 보안에 더 좋다는 이야기를 들었는데요. 만약에 구현을 하려고 하면 강의에서처럼 로그인 했을때 accessToken 과 refreshToken 을 함께 보내는게 아니라 이런식으로 보내면 될까요?res.cookie( 'refreshToken', refreshToken, { httpOnly: true, secure: true, sameSite: 'strict' }); return {accessToken: '엑세스 토큰'};배포 과정과 강의를 담은 Part 2는 언제 나올까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
login에서 token 을 받는 이유가 있을까요?
안녕하세요.토큰시스템을 사용하도록 엔드포인트 변경하기 편을 보고 질문드립니다.보통 login api 라고 하면 token 없이 email, pw 만 받아 validation 하는 것을 목적으로 한다고 알고있는데기획에 따라 헤더의 authorization 필드를 사용한 token 로그인도 해야할 수 있다고 하셔서 궁금한점이 생겼습니다.어떤 경우에 그런 상황이 있는지 대략적인 케이스를 소개해주실수있을까요?강의 잘 보고있습니다. 감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
git hub 업로드가 안되서 여쭤봐요
저같은경우 윈도우를 사용하고 있는데 두가지경우가 나오질 않아서 깃허브에 확인해보니 이렇게 프리캠프는 생성이 되었는데 들어가보니 강의에서 본것처럼 파일이 업로드 되있질 않았어요..어떻게 해야할까요?