inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

자바 업캐스팅, 재귀함수 질문드립니다.

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

JAVA언어 기출문제의 변형, 업캐스팅 + 재귀함수(16분) class Child extends Parent{ public in sumValues(int n){ if(n <= 0){ return 0; } if(n%2 == 0){ return n + sumValues(n-2); }else{ return sumValues(n-1); } 위 코드에서, 짝수일 때 return n+sumValues(n-2), 홀수일 때 sumValues(n-1)을 실행하게 되는데, 9 = sumValues(8) // 18 8 = 8 + sumValues(6) // 18 7 = sumValues(6) // 10 6 = 6 + sumValues(4) // 10 5 = sumValues(4) // 6 4 = 4 + sumValues(2) // 6 3 = sumValues(2) // 2 2 = 2 + sumValues(0) // 2 1 = sumValues(0) // 0 0 = 0 // 0 으로, sum : 18로 생각을 했는데, 강의를 아무리 봐도 어떻게 20이 계산되는지 이해가 안 됩니다..

  • python
  • java
  • c
  • 정보처리기사
rokkk 댓글 2 좋아요 0 조회수 265

정리

해결됨

개발자를 위한 쉬운 도커

안녕하세요 선생님. 공부하면서 블로그에 정리를 하려는데, https://www.inflearn.com/course/개발자를-위한-쉬운-도커?inst=f4872931&utm_source=instructor&utm_medium=referral&utm_campaign=inflearn_트래픽_promotion-link 이 출처를 남긴다면, 괜찮을까요? 다른 질문에서 가능하다고 되어 있는데, 그래도 한번더 여쭤보고 작성하는게 좋을 것 같아 연락드립니다. 양질의 강의 감사드립니다!

  • docker
  • 가상화
  • ci/cd
  • docker-compose
  • github-actions
  • docker-volume
  • docker-image
  • container
정성주 댓글 2 좋아요 1 조회수 272

애플 앱스토어나 구글 플레이스토어 배포 관련 문서

해결됨

[플러터플로우] 실전! 앱 출시를 위한 끝장 노하우!

안녕하세요 강의 잘 보고 있습니다 애플 앱스토어나 구글 플레이스토어 배포 관련 문서를 채워넣는 자료를 올려주셨다고 했는데 혹시 어디에서 확인이 가능할까요? 감사합니다!

  • flutter
  • no-code
  • supabase
  • flutterflow
진오 댓글 1 좋아요 0 조회수 241

책없이 강의듣는중입니다.

미해결

코드로 배우는 React 19 with 스프링부트 API서버

저는 책이 없이 강의만을 통해 학습중입니다. 강의 중간중간 코드를 복사해서 오시더라구요 ~ js같은 경우는 따라치는것에 대해 어려운 부분이 있는데 혹시 어쩔 수 없는 부분인 걸까요 ?

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
김계환 댓글 1 좋아요 0 조회수 233

2강 주요 키워드 정리 질문이 있습니다.

해결됨

자바 9부터 자바 21까지

강사님 항상 감사합니다. 다름이 아니라 2강 17:52 부분을 보면 requires compile 특정 모듈의 컴파일 의존성만 가져온다 이렇게 영상이 보여지는데 requires static이 맞는거 겠죠?

  • java
티벳로보 댓글 1 좋아요 0 조회수 207

shuttle.showinfo를 호출시 실행창 질문

미해결

김영한의 실전 자바 - 중급 2편

package generic.test.ex3 object UnitPrinter { //제네릭 메서드 fun <T : BioUnit>printerV1(t: Shuttle<T>){ println(t.showInfo()) } fun printerV2(shuttle: Shuttle<out BioUnit>){ println(shuttle.showInfo()) } fun <T : BioUnit>printerV3(t: Shuttle<T>){ val unit = t.out() println("이름: ${unit.name} hp:${unit.hp}") } fun printerV4(shuttle: Shuttle<out BioUnit>){ val unit = shuttle.out() println("이름: ${unit.name} hp:${unit.hp}") } } 자바와 코틀린은 100퍼센트 호환이 된다고 해서 코틀린으로 강의를 보고있습니다. 강의에선 v1과 v2로 인자로 받은 셔틀에서 unit을 꺼내어 내용을 출력했는데요. 그렇게 안하고 셔틀에서 바로showinfo를 호출해서 실행창에 name : 마린 hp : 40 kotlin.Unit name : 마린 hp : 40 kotlin.Unit 이렇게 줄바꿈으로 kotlin.Unit이라는게 자동적으로 붙는데 왜이런건가요 . 강의에서처럼 unit을꺼내어서 출력하면 안붙습니다.

  • java
  • 객체지향
  • 코딩-테스트
  • 알고리즘
댓글 2 좋아요 0 조회수 315

H2 DB 관련 문의입니다.

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요. 이번에 JPA를 시작하는 학생입니다. H2 DB 실행시 계속 연결할 수 없다고 나오는데 혹시 해결 방법을 알 수 있을까요? 화면 첨부합니다 현재 네이버 웨일 브라우저를 사용하고 있는데 크롬에서도 동일 현상이 발생했습니다. 감사합니다.

  • java
  • jpa
Tonka 댓글 3 좋아요 0 조회수 628

3DBall 학습 중 문제

해결됨

유니티 머신러닝 에이전트 완전정복 (기초편)

이런 식으로 잘 실행이 되었는데 이 이후에 이런 문제가 떠버리네요 환경 문제라고 나오는 거 같은데 전혀 모르겠습니다,,

  • unity
  • 머신러닝
  • 강화학습
  • unity-ml-agents
char3941 댓글 1 좋아요 0 조회수 243

mlagents-learn --hlep

해결됨

유니티 머신러닝 에이전트 완전정복 (기초편)

학습 하기 전 mlagents-learn --hlep를 실행했는데 이런 문제가 생기네요,, 혹시 어떤 문제일지 알 수 있을까요?

  • unity
  • 머신러닝
  • 강화학습
  • unity-ml-agents
char3941 댓글 1 좋아요 0 조회수 265

26강 서버실행 오류

미해결

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

Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2024-06-28 18:38:36.868 ERROR 35116 --- [ main] o.s.boot.SpringApplication : Application run failedorg.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'dataSourceScriptDatabaseInitializer' defined in class path resource [org/springframework/boot/autoconfigure/sql/init/DataSourceInitializationConfiguration.class]: Unsatisfied dependency expressed through method 'dataSourceScriptDatabaseInitializer' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:800) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:541) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) ~[spring-context-5.3.24.jar:5.3.24] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:731) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1303) ~[spring-boot-2.7.6.jar:2.7.6] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1292) ~[spring-boot-2.7.6.jar:2.7.6] at com.group.libraryapp.LibraryAppApplication.main(LibraryAppApplication.java:10) ~[main/:na]Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:658) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:638) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:887) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) ~[spring-beans-5.3.24.jar:5.3.24] ... 21 common frames omittedCaused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.24.jar:5.3.24] at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.24.jar:5.3.24] ... 35 common frames omittedCaused by: java.lang.IllegalStateException: Cannot load driver class: com.mysql.cj.jdbc.Driver at org.springframework.util.Assert.state(Assert.java:97) ~[spring-core-5.3.24.jar:5.3.24] at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:171) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:123) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:48) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Hikari.dataSource(DataSourceConfiguration.java:90) ~[spring-boot-autoconfigure-2.7.6.jar:2.7.6] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.24.jar:5.3.24] ... 36 common frames omitted 기존에 저랑 같은 문제를 갖고 있는 학우 분 코멘트 따라서 runtimeOnly 'com.mysql:mysql-connector-j' 기존 runtimeOnly 의존성을 지우고 해당 코드를 추가해줬지만 여전히 같은 에러가 나옵니다. 어떻게 해결하면 좋을까요?

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
치치 댓글 3 좋아요 0 조회수 341

request값으로 뭘 넣어야할지 잘 감이 안옵니다..

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 김영한 강사님의 mvc와 jpa 수업을 어느정도 듣고 프로젝트를 참가하였는데 종종 까먹어서 다시 와서 듣곤 합니다. 근데 최근 프로젝트를 하면서 계속 헷갈리는게 request 값을 어떻게 넣어줘야할지 모르겠습니다... restController를 만들고있는데 만약 댓글 생성하는 컨트롤러를 만든다고 치면, board_Id는 @pathvariable을 통해서 가져와 getID 하면 된다고 치지만. 글을 작성하는 User는 어떻게 받아와야할지... 그냥 냅다 request에 User user를 받아와도 되는건지 헷갈립니다.. 프론트를 안해봐서 그런지 더 헷갈리는거같아요. 만약에 댓글을 작성하는 컨트롤러를 만든다고 하였을 때, User user, @pathvariable board_id, comment comment 라고 한다면 comment는 form에서 Post로 값이 넘어오는 건 알겠는데 User같은 경우는 어떻게 받아야하나요..?

  • spring
  • mvc
냠냠 댓글 1 좋아요 0 조회수 205

강의 자막 오류입니다

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예 [질문 내용] 여기에 질문 내용을 남겨주세요. HTTP 요청 데이터 - POST HTML FORM 강의 중 28초 ~ 49초까지 자막 오류가 있습니다 수정 부탁드립니다. 첫 자막은 제가 수정했고 그 이후 자막 추가해주시면 될 것 같습니다!

  • spring
  • mvc
0901shc 댓글 1 좋아요 0 조회수 242

반복문 for 이중일때

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

반복문 for 이중일때 ..왜두번째 조건문부터 증가하나요 이해가안갑니다!! 더불어 건의사항이 있는데강의듣다가 바로 질문남길수있는 시스템이면 좋겠습니다. 스크린샷도안되고 불편하네요.또 강의재생중 화면 안꺼지도록 할수없나요?일일이 핸드폰기기설정들어가서 하고있는데 상당히 번거롭네요ㅜ 어려운 섹션이나 영상 설명은 질문으로 꼭 남겨주세요. 기출문제를 풀다가 막힌 개념이 있나요? 질문으로 회차나 번호, 개념을 예시로 질문해주세요. 답변에 도움이 됩니다. 이론 문제는 통합본 PDF 파일로 제공될 예정입니다. (6월 중 업로드 예정) 합격을 가르는 것은 역시 코드해석문제. 이론을 외울 시간이 없다면 코드에 익숙해지고, 중요 개념을 몇 가지 외워가면 합격할 수 있습니다.

  • python
  • java
  • c
  • 정보처리기사
김인도 댓글 1 좋아요 0 조회수 220

스프링 입문, 초보에게도 괜찮은지

해결됨

토비의 스프링 6 - 이해와 원리

안녕하세요! 토비님, 제가 현재 JAVA와 DB를 공부하고 스프링으로 넘어가려고 합니다. 다른 스프링 강의들은 구버전이던가 겉핥기 식 강의가 많은걸 후기로 많이 봤습니다. 그래서 최신 버전이기도 하고 수강평에 초보자가 들어도 괜찮다해서 스프링 입문을 토비님 강의로 시작하려하는데 괜찮을지 고민이되네요,,!

  • java
  • spring
박병천 댓글 2 좋아요 0 조회수 628

NAT 기술에 대해서 자세하게는 몰라도 되는건가요?

미해결

CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 제곧내 입니다. 공인을 받아 사설로 나눈다~ 사설끼리는 private하다. 공유기의 NAT로 wifi 사용한다~ 요 정도만 알면 되나요?

  • 면접
  • 운영체제
  • 기술면접
윾민 댓글 1 좋아요 1 조회수 281

group에서 keyword arg를 전송할 때에 대해 알고 싶습니다.

미해결

실리콘밸리 엔지니어와 함께하는 샐러리(Celery)

group에서 숏컷이 .s를 붙이면 되는 걸로 알고 있습니다. 이때, args와 kwargs가 같이 전송되어야 하는 경우 어떻게 해야 하는지 알고 싶습니다.

  • django
  • celery
  • django-celery
  • django-celery-beat
bluebamus 댓글 1 좋아요 1 조회수 227

Next.js 14 배포 후 액세스토큰 업데이트 안되는 문제

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요 제로초님 강의 잘 듣고 있습니다. 사실 이 문제가 몇개월동안 계속 해결이 안되어서 강의를 수강한거나 마찬가지인데요. 아무리 스택오버플로우나, next.js issue에 직접 글을 올려도 해결이 안되어서 이렇게 질문 글 올립니다. 일단 Next.js 14 + Express 조합으로 배포를 한 상황이고 jwt 토큰을 쿠키에 담아서 로그인 기능을 구현했습니다. 또한 next.js Middleware 내부에서 액세스토큰을 재발급 받아주고 있습니다. 순서는 이렇습니다. 로그인 시에 사용자가 아이디 + 비밀번호를 입력해서 서버에게 요청한다. 서버에서 해당 아이디 값을 받아서 조회 후, 새로운 리프레시 토큰 + 액세스 토큰을 클라이언트로 보내준다. 백엔드 내부 코드는 다음과 같습니다. const newAccessToken = createNewAccessToken(existingUser); const newRefreshToken = createNewRefreshToken(existingUser); const hashedToken = await hashValue(newRefreshToken); await deleteRefreshTokenData(existingUser.id); await createRefreshTokenData(hashedToken, existingUser.id); return res.json({ success: true, accessTokenValue: newAccessToken, refreshTokenValue: newRefreshToken, }); Next.js 측에서 액세스 토큰과 리프레시 토큰을 받아서 API ROUTE로 POST 요청을 날려서 set cookie를 해준다. const sendTokenCookieToHandler = async (accessTokenValue: string, refreshTokenValue: string) => { await fetch('/api/token', { method: 'POST', body: JSON.stringify({ accessTokenValue, refreshTokenValue }), headers: new Headers({ 'Content-Type': 'application/json', }), cache: 'no-store', }); }; export default sendTokenCookieToHandler; ``` 그 후 액세스 토큰이 만료 되면, Next.js 미들웨어 단에서 리프레시 토큰을 다시 백엔드로 보내서 새로운 액세스 토큰을 받아온다. Next.js 미들웨어 코드는 이렇습니다. export async function middleware(request: NextRequest) { const { accessToken, refreshToken } = getTokenValues(request); if (!accessToken && refreshToken) { const res = await getNewAccessToken(refreshToken); if (res && res.newAccessToken) { const response = NextResponse.next(); const { newAccessToken } = res; response.cookies.set('accessToken', newAccessToken, { expires: new Date(Date.now() + 24 * 60 * 60 * 1000), }); return response; } } return NextResponse.next(); } ``` 받아온 액세스 토큰 값을 아예 middleware 단에서 set cookie 를 통해 쿠키로 설정해준다. 근데 여기서 문제는 초기에는 정상적으로 잘 작동합니다. 액세스 토큰이 만료 된 후에도 정상적으로 새로운 액세스토큰을 받아오기도 하고요 근데 문제는 일정 시간 후에(제가 생각했을때 리프레시토큰이 만료 된 후, 다시 로그인 요청을 보냈을때 같습니다.) 아예 새로운 리프레시 토큰과 액세스 토큰을 제대로 받아오지 못하는거 같습니다. 근데 F12 를 켜서 확인해보면 백엔드로 api 콜은 정상적으로 가고 있습니다.. 그래서 현재 다시 재배포를 할때마다 초기 상태로 돌아가서 로그인이 정상적으로 작동 하게 되는데요. 어디가 문제인걸까요 ? 여러 오픈톡이나 커뮤니티에 물어봤지만, 어떤분은 Next.js 내부에서 같은 라우트 그룹이면 미들웨어를 거치지 않아서 발생하는 문제라고도 하시는데 초기 배포 당시에, 리프레시 토큰을 처음에 잘 받았을때 일부러 액세스 토큰을 삭제하고 다시 새로고침하면 액세스 토큰을 제대로 잘 받아오고 있습니다.. 도저히 아무리 이리저리 수정해봐도 몇개월 동안 고치지 못해서 이렇게 글 남깁니다. 읽어주셔서 감사합니다.

  • react
  • next.js
  • react-query
  • next-auth
  • msw
댓글 3 좋아요 0 조회수 962

D드라이브에서 xilinx 설치 방법

미해결

설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)

안녕하세요 C드라이브에서 설치 했는데 용량이 부족하다고 진행이 안되네요 ㅠㅠ D드라이브에서 설치하도록 다시 설정하고 싶은데 잘 모르겠네요 도와주세요

  • verilog-hdl
  • fpga
  • 임베디드
정우석 댓글 2 좋아요 1 조회수 348

mmsegmentation 응용

미해결

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

안녕하세요. mmdetection 뿐만 아니라 , mmsegmentation 에서도 적용을 해보고자 합니다. 이때 mmdetection에서 사용하는 from mmdet.datasets import build_dataset의 경우 mmsegmentation에서는 어떻게 import하는지 궁금합니다.

  • python
  • 머신러닝
  • 딥러닝
  • keras
  • tensorflow
  • 컴퓨터-비전
대순 댓글 2 좋아요 0 조회수 210

인기 태그

인프런 TOP Writers

주간 인기글