inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

웹스톰 사용자인데 cookie를 출력해보면

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

console.log(req.headers.cookie); Webstorm-55941cca=39281e1b-d7ae; refreshToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI4ZDM2YTc4Yy1mOWFiLTQ1NjgtODg0NS03MWUzOTQ0ODE1ZjMiLCJpYXQiOjE2OTUyMTI1NzYsImV4cCI6MTY5NjQyMjE3Nn0.8M9UkwgQXS7dGYpq3rxHnSF9TmoEnliY_wbZuhacqL0 이런식으로 출력이 되서 처음에 refreshToken 설정할때 Webstorm-55941cca=39281e1b-d7ae; 이 부분을 없에는 방법이 있을까요? 계속 replace("Webstorm-55941cca=39281e1b-d7ae; refreshToken=','') 이런식으로 없애야 하나요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
송원 댓글 1 좋아요 0 조회수 236

섹션23 도커부분 건너띄고, 섹션24 먼저 들어도 될까요?

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

도커를 수강하지 않고 섹션 24,25 수강해도 될까요? 도커 이후 수업에서는 도커를 사용해서 수업을 진행하나요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
김주원 댓글 1 좋아요 0 조회수 221

dataSource

미해결

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

AND `TABLE_NAME` = 'channels' UNION SELECT * FROM `INFORMATION_SCHEMA`.`REFERENTIAL_CONSTRAINTS` WHERE `CONSTRAINT_SCHEMA` = 'sleact' AND `TABLE_NAME` = 'channelchats' UNION SELECT * FROM `INFORMATION_SCHEMA`.`REFERENTIAL_CONSTRAINTS` WHERE `CONSTRAINT_SCHEMA` = 'sleact' AND `TABLE_NAME` = 'users' ) `rc` ON `rc`.`CONSTRAINT_SCHEMA` = `kcu`.`CONSTRAINT_SCHEMA` AND `rc`.`TABLE_NAME` = `kcu`.`TABLE_NAME` AND `rc`.`CONSTRAINT_NAME` = `kcu`.`CONSTRAINT_NAME` query: SELECT VERSION() AS `version` query: SELECT * FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE `TABLE_SCHEMA` = 'sleact' AND `TABLE_NAME` = 'typeorm_metadata' query: DROP INDEX `UserId` ON `workspacemembers` query failed: DROP INDEX `UserId` ON `workspacemembers` error: Error: Cannot drop index 'UserId': needed in a foreign key constraint query: ROLLBACK [Nest] 81848 - 2023. 09. 20. 오전 12:47:04 ERROR [TypeOrmModule] Unable to connect to the database. Retrying (9)... QueryFailedError: Cannot drop index 'UserId': needed in a foreign key constraint at Query.onResult (/Users/yujinseung/Desktop/Slack/slack_s/src/driver/mysql/MysqlQueryRunner.ts:222:33) at Query.execute (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/commands/command.js:36:14) at PoolConnection.handlePacket (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/connection.js:478:34) at PacketParser.onPacket (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/connection.js:97:12) at PacketParser.executeStart (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/packet_parser.js:75:16) at Socket.<anonymous> (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/connection.js:104:25) at Socket.emit (node:events:513:28) at addChunk (node:internal/streams/readable:324:12) at readableAddChunk (node:internal/streams/readable:297:9) at Socket.Readable.push (node:internal/streams/readable:234:10) [Nest] 81848 - 2023. 09. 20. 오전 12:47:04 ERROR [ExceptionHandler] Cannot drop index 'UserId': needed in a foreign key constraint QueryFailedError: Cannot drop index 'UserId': needed in a foreign key constraint at Query.onResult (/Users/yujinseung/Desktop/Slack/slack_s/src/driver/mysql/MysqlQueryRunner.ts:222:33) at Query.execute (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/commands/command.js:36:14) at PoolConnection.handlePacket (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/connection.js:478:34) at PacketParser.onPacket (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/connection.js:97:12) at PacketParser.executeStart (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/packet_parser.js:75:16) at Socket.<anonymous> (/Users/yujinseung/Desktop/Slack/slack_s/node_modules/mysql2/lib/connection.js:104:25) at Socket.emit (node:events:513:28) at addChunk (node:internal/streams/readable:324:12) at readableAddChunk (node:internal/streams/readable:297:9) at Socket.Readable.push (node:internal/streams/readable:234:10) 이런오류가 뜹니다..! 뭐가 문제인지 모르겠습니당.. https://github.com/jinseung0327/slack_clone 혹시나 해서 깃허브 주소까지 올립니닷..!

  • node.js
  • express
  • nestjs
  • typeorm
진승이 댓글 2 좋아요 0 조회수 496

user에 delete 관련 속성이 없다는 에러가 발생합니다.

미해결

탄탄한 백엔드 NestJS, 기초부터 심화까지

해당 에러를 해결하려고 철자라든가 패턴 잘못 작성한 게 있나 찾아봤는데 없네요..대체 어디가 문제인지 모르겠습니다

  • node.js
  • mongodb
  • express
  • nestjs
  • ssr
도도한 바다사자 댓글 1 좋아요 1 조회수 351

beforeEach를 추가했음에도 afterEach가 필요한 이유

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의 마지막에 beforeEach 메소드를 추가하여 매번 객체를 생성하게 되잖아요. 그러면 굳이 afterEach() 메소드로 매번 clear할 필요가 없다고 생각했었는데 afterEach() 메소드를 주석 처리하면 오류가 나더라고요. 제 생각엔 MemoryMemberRepository의 store 변수가 static이기 때문에 beforeEach() 메소드로 매번 객체를 새로 생성하더라도 static 변수는 새로 생기지 않고 기존의 것이 계속 공유되고 있기 때문에 afterEach()가 필요한 거 아닐까 싶은데 제가 정확히 이해한 게 맞는지, 제 생각에 오류가 있는지 궁금합니다.

  • java
  • spring
  • mvc
  • spring-boot
11 1 댓글 2 좋아요 3 조회수 598

Typeorm error: Table already exist

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

Entity를 변경하고 나서 서버 재 시동 시 Connection Error, Table {Table_name} already exist 에러가 발생하고, Entity와 상관없이 소스를 수정해도 여전히 동일한 에러가 발생합니다. 에러를 찾아봤는데도 명확한 해답을 찾지 못해 질문 드립니다. [Nest] 1860 - 2023. 09. 14. 오후 10:13:42 ERROR [TypeOrmModule] Unable to connect to the database. Retrying (5)... QueryFailedError: Table 'tb_user_info' already exists 변경 전 @Column() @Field(() => String) USR_USER_TYPE: boolean 변경 후 @Column() @Field(() => Boolean) USR_USER_TYPE: boolean 현재 Package는 아래와 같고요. "@nestjs/typeorm": "^10.0.0", "typeorm": "^0.3.17" @Entity를 중복 선언하거나 소스가 두개이진 않습니다. (기존에도 똑같은 질문이 있어서 확인했습니다.) 다만 Table명을 다르게 하기 위해 아래처럼 했습니다. @Entity('TB_USER_INFO') @ObjectType() export class UserInfoEntity { ..... 이 에러를 찾아보니... @Entity({ name: 'TB_USER_INFO', schema: 'user_schema'}) 처럼 하라고 하는데.... 우선 제대로 된 해결법이 맞는지 궁금하고요. 만약 맞다면 저기서 얘기하는 schema가 무엇을 말하는지 못찾았습니다. ( 혹시 schema명이 database name이 아닌가 싶네요... 그렇게 했을때 별도로 다른 에러가 발생하진 않았거든요) 그리고 어떤 곳에선 synchronize를 false로 하고 직접 수정하는게 낫다는 사람들도 있더라고요. 조금 이해가 안되긴 하지만..... 해결됐습니다. ============================================================= 이런저런 테스트를 하다가 Stack overflow에서 어떤 사람이 @Entity작성 시 이름을 별도로 지정하지 않고 class명을 그대로 써서 해결됐다고 하길래 저도 그렇게 했더니 해결이 됐습니다. 최초 class명과 table명을 다르게 쓴 이유는 해당 entity클래스가 entity 라는걸 알아보기 쉽게 하려고 class에 entity라는 이름을 붙이고, table명에서는 entity를 쓰지 않았었습니다. 지금도 그렇게 하는 것이 더 편하다 생각하는데... 우선 에러를 해결하기 위해서는 이렇게 밖에 방법이 없네요;;;;; 혹시 테이블 명을 별도로 사용하고 에러가 나게 하지 않을 방법이 있을까요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
yisi 댓글 2 좋아요 0 조회수 944

궁금한점 있습니다

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요 강사님 궁금한것이 있어서 질문 남깁니다 public void returnBook(String bookName) { UserLoanHistory targetHistory = this.userLoanHistories.stream () .filter(history -> history.getBookName().equals(bookName)) .findFirst() .orElseThrow(IllegalAccessError::new); //findFist()는 옵셔널로 반홚나다 targetHistory.doReturn(); } 이 로직에서 만약 한 책을 빌렸다가 반납하면 그 히스토리를 반납완료 상태로 만들어주고 끝내고 다시 그 책을 빌리려고 한다면 새로운 히스토리를 만들어서 List에 저장할텐데 그럼 다시 그책을 반납할 경우 findFirst()를 해서 그 히스토리를 찾아왔을때 이미 반납된 책을 다시 반납하는 행위가 되는것이 아닌건지 궁금해서 질문 드립니다!

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
wjddjs21 댓글 1 좋아요 2 조회수 271

트랜잭션 로직을 공통처리 하는 방법으로 적절할까요?

해결됨

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

## 트랜잭션 서비스 @Injectable() export class TransactionService { constructor(private readonly dataSource: DataSource) {} async transaction(callback) { const queryRunner = this.dataSource.createQueryRunner(); await queryRunner.connect(); await queryRunner.startTransaction(); try { await callback(queryRunner); await queryRunner.commitTransaction(); return true; } catch (error) { console.error(error); await queryRunner.rollbackTransaction(); throw error; } finally { await queryRunner.release(); } } } ## 트랜잭션 모듈 (글로벌) @Global() @Module({ providers: [TransactionService], exports: [TransactionService], }) export class TransactionModule {} ## 사용예제 async join(email: string, nickname: string, password: string) { const user = await this.usersRepository.findOne({ where: { email } }); if (user) { throw new HttpException('이미 존재하는 사용자입니다.', 401); } const hashedPassword = await bcrypt.hash(password, 12); await this.transactionService.transaction(async (queryRunner) => { const result = await queryRunner.manager.getRepository(Users).save({ email, nickname, password: hashedPassword }); const sleact = await queryRunner.manager.getRepository(Workspaces).findOne({ where: { name: 'Sleact' } }); await queryRunner.manager.getRepository(WorkspaceMembers).save({ UserId: result.id, WorkspaceId: sleact.id }); const channel = await queryRunner.manager .getRepository(Channels) .findOne({ where: { name: '일반', WorkspaceId: sleact.id } }); await queryRunner.manager.getRepository(ChannelMembers).save({ UserId: result.id, ChannelId: channel.id }); }); } 안녕하세요 제로초님. 트랜잭션 관련해서 로직 작성하다가 실행부를 제외하고는 너무 공통되는 것 같아서 방법을 고민하다가 위 소스처럼 처리하면 어떨까 싶어 작성해보았습니다. 트랜잭션 서비스를 생성해서 공통이되는 트랜잭션 로직을 모아두고, 콜백함수를 받아서 처리하는 형태로 해보았는데요! 일단 동작은 정상적으로 하는데, 이렇게 했을 때 발생할만한 문제가 있을지 짐작이 가지 않아서 문의 남깁니다! 위와같은 로직으로 트랜잭션을 공통처리 했을 때 생길만한 사이드이펙트가 있을까요?

  • node.js
  • express
  • nestjs
  • typeorm
김영욱 댓글 1 좋아요 0 조회수 328

Dto 생성시 유틸리티 타입을 사용할수 있나요?

해결됨

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

DB를 기반하여 Users엔티티를 만들었을떄 join함수에서 사용할 DTO를 만들기위해 Users를 상속받아 Pick이나 Omit을 사용하여 일부 데이터만 사용하고 싶습니다. 리액트의 유틸리티 타입처럼 기본 클래스에서 일부만 상속을 받는 방법이 있을까요?

  • node.js
  • express
  • nestjs
  • typeorm
최석우 댓글 1 좋아요 0 조회수 286

우분투 사용법

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

강의 듣다가 윈도우에서 우분투로 바꿨는데 사용법이 익숙치 않아요 터미널에서 bash 라는 창을 어떻게 켜는지도 모르고 , 단축키도 몰라요. 전체적으로 미숙해요. 이런건 어디서 배워야하나요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
kql 1 댓글 2 좋아요 0 조회수 461

변수의 타입에 클래스를 지정해준 것과 지정 안한 것 과의 차이가 어떻게 되는지 궁금해서 질문을 남깁니다.

미해결

타입스크립트의 모든 것

안녕하세요? 현 강의에서 user에 new UserInfo() 클래스를 할당하고 동시에 해당 변수에 타입으로 클래스를 할당할 수 있다고 하셨는데 그렇게 되면 본래 UserInfo 상단에 지정된 인자들의 타입을 한번 더 점검해준다는 뜻인가요?? 해당 부분이 이해가 안되서 질문을 남깁니다.

  • typescript
  • Deno
  • nestjs
도도한 바다사자 댓글 2 좋아요 0 조회수 389

OS 바꿨는데 처음부터 다시 들어야하나요?

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

전에 WINDOW 쓰고 있어서 오류가 많이 걸린다고 하소연 한적 있었는데 선생님이 우분투로 바꾸라고 해서 우분투 듀얼 부팅 설치했는데 지금까지 들었던 강의에서 사용되었던 우분투 명령어를 모르니 처음부터 다시 들어야하나요?... 거의 다 들은 거 같은데...

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
kql 1 댓글 1 좋아요 0 조회수 357

인자에 객체 값을 넣는 이유

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

인자에 객체 값을 넣는 이유가 안전하기 때문이라고 하셨는데 정확히 어떤 부분이 안전한지 알려주실 수 있나요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
송원 댓글 2 좋아요 0 조회수 299

의존성조언에서 UserService의 login은 Clock에 의존하는지 모르지 않나요?

미해결

Java/Spring 주니어 개발자를 위한 오답노트

의존성 조언 두번째 방법에서 문제점이 UserService.login은 여전히 의존성이 감춰져있다. 위와 마찬가지로 Userservice.login을 테스트할 때 clock에 의존하고 있는지 알 수 없다. 이거였는데 세번 째 방법도 UserService를 사용하는 메서드는 login(user)만 남겨서 user가 Clock에 의존하는지 모르지 않나요? 아까 맥도날드 예제에서는 인터페이스를 사용하면 일을 시킨다고 설명하셨는데 이것도 인터페이스를 사용해서 일을 시키는거니 이렇게 구현하면 내부에서 clockHolder를 사용해도 외부에서 몰라도 되나요?

  • java
  • spring
  • 객체지향
  • 소프트웨어-테스트
seiyoung an 댓글 2 좋아요 0 조회수 472

오버라이딩 질문

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

class 공중부품 { run = () => { console.log("날라서 도망가자"); }; } class 지상부품 { run = () => { console.log("뛰어서 도망가자"); }; } class Monster { power = 10; 부품; constructor(부품, power) { this.부품 = 부품; this.power = power; } attack = () => { console.log("공격하자!"); console.log("내 공격력은 " + this.power + "야!"); }; run = () => { console.log("도망가자!"); }; } run 메소드를 this.부품.run ();으로 바꿔주지 않아도 뛰어서 or 날아서 도망가자고 바뀌던데요.. 상속관계면 오버라이딩으로 생각하고 알아서 바뀌는 것은 이해했는데 이렇게 객체를 집어넣었을 때도 자동을 바꿔주는건 왜 그런건가요?

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
karmesin924 댓글 1 좋아요 0 조회수 236

docker-compose build시 에러발생

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

"setenv: invalid argument" 라는 에러가 발생합니다만 어떤 부분을 고치면 에러를 고칠 수 있는 지 알려주시면 감사하겠습니다. yaml파일 version: "3.7" # 컴퓨터들 services: # 컴퓨터이름 my-backend: build: context: . dockerfile: Dockerfile ports: - 4000:4000 # 컴퓨터이름 my-database: build: context: . dockerfile: Dockerfile.mongo ports: - 27017:27017 터미널 hyunminyu@HYUNMINnoAir backend % ls Dockerfile docker-compose.yaml node_modules util.js Dockerfile.mongo email.js package.json yarn.lock Phone.js index.js swagger hyunminyu@HYUNMINnoAir backend % docker-compose build setenv: invalid argument

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
s-june.lee 댓글 1 좋아요 0 조회수 236

app.module.ts 하는도중에

미해결

탄탄한 백엔드 NestJS, 기초부터 심화까지

화면처럼 AppModule에 붉은 줄이 떠서 확인을 해보니 'AppModule' 클래스가 'NestModule' 인터페이스를 잘못 구현합니다. 'configure' 속성이 'AppModule' 형식에 없지만 'NestModule' 형식에서 필수입니다.ts(2420) nest-module.interface.d.ts(6, 5): 여기서는 'configure'이(가) 선언됩니다. 라고 뜨는데 어떤식의 해결을 해야할 지 모르겠습니다.

  • node.js
  • mongodb
  • express
  • nestjs
  • ssr
댓글 1 좋아요 0 조회수 401

몽고db compost 데이터베이스

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

몽고db compose 에서 데이터베이스가 나타나지 않습니다..... localhost로도 했고 아이피로도 바꿔서 해봤는데도 안되고 근데 포스트맨에서는 동작이 잘 되는데 왜그런건가요.....

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
조규은 댓글 1 좋아요 0 조회수 201

퀴즈06

해결됨

[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스

backend/index.js 안녕하세요. 퀴즈06을 푸는 도중에 제가 짠 코드가 맞는지 궁금해서 여쭤봅니다 ㅜㅜ.. 우선 signup.js에서 벡앤드 서버로 axios를 통해서 데이터를 보내고 거기서 폰번호가 맞는지 확인하고 토큰을 coolsms 서비스를 통해서 발송하는 코드를 짰습니다. 그 이후에 인증번호와 토큰을 매칭시키고 맞다면 success를 리턴하게 했구 이메일도 비슷한 과정으로 짰습니다. 너무 어렵게 느껴져서 GPT 도움을 통해 코드를 짰는데 이게 맞는지 의심이 되네요 휴.. 혹시 퀴즈에 대한 정답예시이런건 없나요? 아무래도 독학으로 온라인 부트캠프 과정을 밟다보니 포트폴리오는 혼자 해결하는데 좀 어려운 거 같습니다 맞는지도 잘 모르겠고.. 긴 글이지만 성의있게 봐주시면 정말 감사하겠습니다!

  • javascript
  • node.js
  • express
  • docker
  • tdd
  • rest-api
  • nestjs
이하이 댓글 1 좋아요 0 조회수 279

인기 태그

인프런 TOP Writers

주간 인기글