묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
[섹션10] 빈 스코프 - request 예제 만들기 : 콘솔창에서 tomcat 포트번호 안보입니다 어떻게 해야할까요
package hello.core; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class CoreApplication { public static void main(String[] args) { SpringApplication.run(CoreApplication.class, args); } }build.gradle에 web 도 추가해줬고, 외부라이브러리에 들어온것도 확인했습니다. 정상실행은 되는데 콘솔창에 tomcat 포트 번호가 왜 안나올까요? 2025-03-11T20:28:43.171+09:00 INFO 31192 --- [ main] hello.core.CoreApplication : Starting CoreApplication using Java 17.0.12 with PID 31192 (C:\Users\user\Desktop\study\core\build\classes\java\main started by user in C:\Users\user\Desktop\study\core)2025-03-11T20:28:43.179+09:00 INFO 31192 --- [ main] hello.core.CoreApplication : No active profile set, falling back to 1 default profile: "default"2025-03-11T20:28:44.874+09:00 WARN 31192 --- [ main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.support.BeanDefinitionOverrideException: Invalid bean definition with name 'memoryMemberRepository' defined in class path resource [hello/core/AutoAppConfig.class]: Cannot register bean definition [Root bean: class=null; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=autoAppConfig; factoryMethodName=memberRepository; initMethodNames=null; destroyMethodNames=[(inferred)]; defined in class path resource [hello/core/AutoAppConfig.class]] for bean 'memoryMemberRepository' since there is already [Generic bean: class=hello.core.member.MemoryMemberRepository; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in file [C:\Users\user\Desktop\study\core\build\classes\java\main\hello\core\member\MemoryMemberRepository.class]] bound.2025-03-11T20:28:44.898+09:00 INFO 31192 --- [ main] .s.b.a.l.ConditionEvaluationReportLogger : Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.2025-03-11T20:28:44.986+09:00 ERROR 31192 --- [ main] o.s.b.d.LoggingFailureAnalysisReporter : ***************************APPLICATION FAILED TO START***************************Description:The bean 'memoryMemberRepository', defined in class path resource [hello/core/AutoAppConfig.class], could not be registered. A bean with that name has already been defined in file [C:\Users\user\Desktop\study\core\build\classes\java\main\hello\core\member\MemoryMemberRepository.class] and overriding is disabled.Action:Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
프로젝트명 변경 또는 이주 시 발생하는 문제를 여쭤보고 싶습니다.
프로젝트명을 변경할 때 겪는 문제들로 인해 삭제하고 다시 생성하느라 시간을 많이 소비하고 있습니다.제가 겪고 있는 문제점들을 짚어보겠습니다! 공식적으로 편리하게 이주 또는 프로젝트명 변경을 할 수 있는 방법을 알고싶습니다.버전은 5.4.4 사용 중입니다. 기존 프로젝트명: ArenaBattle변경한 프로젝트명: BEAD 프로젝트명 변경 이후 기본적으로 진행한 작업들DefaultEngine.ini에 Redirect할 경로들 모두 적은 후 .uasset 데이터들 옮기기소스코드 내 모든 모듈명 교체, .uproject 명세서 내 모듈명 교체, Build.cs 내 모듈명 교체 (버전 확인도 제대로 수행)Saved, Intermmidate, DerivedDataCache, Binaries, 솔루션 삭제 후 generate -> Rebuild에디터 내 Content 폴더 우클릭 > Update Redirector ReferencesC++ 클래스 생성자 내 참조하는 경로 모두 변경한 프로젝트 경로로 설정 & 에디터의 모든 블루프린트 내 Parent 경로 Redirect한 것으로 적용된 것 확인에픽게임즈 라운처 > 언리얼 엔진 > 검증 수행 질문 모음1. Redirect를 시도했는데도 불구하고 "행동 트리"와 "데이터 애셋"의 경우, 참조하는 클래스가 새로운 프로젝트명의 클래스를 찾지 못하는 문제시도한 내용:Redirect 사용 시 Widget Blueprint 등은 Parent 경로는 잘 찾았으나 Behavior Tree 내 클래스 경로와 데이터 애셋의 경로는 제대로 찾지 못해 삭제하고 다시 생성해야 하는 경우가 발생했습니다. (물론, Redirect 작성 이후 .uasset을 옮기고 캐시 삭제 및 generate 수행)// DefaultEngine.ini // [CoreRedirects] +ClassRedirects=(OldName="/Script/ArenaBattle.ABComboActionData", NewName="/Script/BEAD.ABComboActionData") // 애셋 데이터 +ClassRedirects=(OldName="/Script/ArenaBattle.BTService_Detect",NewName="/Script/BEAD.BTService_Detect") // 행동트리 ... 이하 생략 2. Animation Montage의 경우, 정보들은 그대로 잘 옮겨져 Notifies도 제대로 배치되어 있지만삭제하고 다시 설치하지 않으면 C++ 클래스 내 Notify 함수가 호출되지 않는 현상아래 AM_ComboAttack 몽타주는 Redirect를 사용하여 정상적으로 열리고, 모든 내용들이 잘 배치가 되어 있으나아래 AttackHitCheck 노티파이를 삭제하고 다시 배치하지 않으면 C++ Notify 함수가 재생되지 않는 현상이 발생합니다. 3. 기존 모듈명은 이미 수정하여 어느 곳에도 존재하지 않는데 자꾸 VerifyImport: Failed to find script package for import object 'Package/Script/ArenaBattle' 경고가 뜨는 현상모든 소스코드와 명세서, 그리고 블루프린트 내에도 이전 모듈명과 관련된 내용이 없는데도 엔진을 실행하면 아래 경고문이 나옵니다. (당연히 캐시 삭제와 generate, rebuild, update redirector references 수행했습니다.)물론, BP_ABGameMode.uasset을 다시 지우고 생성하면 해결되겠지만위의 질문들을 포함해서 Redirect를 사용하고 코드를 전부 수정해도 자꾸 적용이 안되는 게 생기고 아래 오류가 생기니 새로 삭제하고 다시 만들어야 하는 번거로움이 있습니다 ㅜ 해결방법을 알고싶습니다.LogLinker: Warning: [AssetLog] D:\4.Unreal\BEAD\Content\ArenaBattle\Blueprint\BP_ABGameMode.uasset: VerifyImport: Failed to find script package for import object 'Package / Script / ArenaBattle'
-
해결됨[UI3 업데이트] 피그마 배리어블을 활용한 디자인 시스템 구축하기
버튼 미작동
우선 강의를 들어주셔서 감사합니다. 강의 들으시면서 궁금하신 부분을 남겨주세요.배리어블 인터페이스와 친해지기 편의 6:07분에서 '리네임' 버튼을 눌러도 이름 변경이 되지 않아요 이유가 뭘까요?이미지: 제 컴퓨터 상황 회사 일 관계로 빠른 답변이 어려울 수 있으며, 최대 3일 이내에 답변드리도록 하겠습니다. 이해를 돕기 위해서 스크린샷 이미지, 피그마 파일 링크를 반드시 첨부해주세요. 마지막으로 먼저 유사한 질문이 있는지 한번 찾아보시는 걸 권장 드립니다. 인프런 서비스 운영 관련해서는 1:1 문의하기로 인프런 쪽으로 연락 주시기 바랍니다.
-
미해결스프링 핵심 원리 - 기본편
request 스코프 예제 만들기 빌드 오류
package hello.core; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class CoreApplication { public static void main(String[] args) { SpringApplication.run(CoreApplication.class, args); } }Build.gradle에 web 라이브러리를 추가했습니다.Gradle로 빌드했습니다 왜 이런 오류가 날까요? Execution failed for task ':CoreApplication.main()'.> Process 'command 'C:\Program Files\Java\jdk-17\bin\java.exe'' finished with non-zero exit value 1* Try:> Run with --stacktrace option to get the stack trace.> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.> Get more help at https://help.gradle.org.Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.For more on this, please refer to https://docs.gradle.org/8.12.1/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.BUILD FAILED in 18s3 actionable tasks: 1 executed, 2 up-to-date 2. 빌드를 IntelliJ로 바꾸자니 tomcat 8080이 안뜹니다ㅜ
-
해결됨포토샵 마스터 클래스 (만들면서 배우는 포토샵 입문)
브러시 커서 모양 질문입니다!
저도 선생님처럼 브러시 커서 원 안에 점이 있었으면 좋겠는데 도무지 찾을수가없네요 ㅠㅠ 혹시 알려주실수있으신가요?
-
미해결비전공자도 합격하는 개발자 이력서/포트폴리오 작성법
안녕하세요! 조언해주신대로 수정하고 있습니다
이때까지 3페이지 이내로 줄여야 한다는 생각으로 꾹꾹 눌러 담아놨는데..재성님이 조언해주신대로 구체화 시키면서 분량 limit을 풀어버리니, 진짜 내세우고 싶은 기술들만 썼는데도 구체적으로 풀어쓰니 이력서가 거의 7 8 페이지까지 되어버리네요 ㅎㅎ 분량은 최대 어디까지 작성하면 좋을까요!? 너무 많이 써도 5분 법칙을 어길 수 있을 거 같아서요 장시간 진행했고 성과가 있는 아래 세 개 프로젝트만 쓰고 있는데.. 한 개를 버려야 하는지도 고민입니다!https://github.com/ForPawTeam/ForPaw_BEhttps://github.com/LlmnTeam/LLMN-Docshttps://github.com/hoyaii/Tily_BE
-
미해결비전공자도 이해할 수 있는 CI/CD 입문·실전
깃허브 시크릿
- name: application.yml 만들기 run: echo "${{ secrets.APPLICATION_PROPERTIES }}" > ./src/main/resources/application.yml 강의에서 이런식으로 시크릿 변수에 yml을 미리 넣었는데 만약에 yml안에서도 시크릿 변수를 사용하면 제대로 동작을 하나요?? ex)kakaopay: secretKey: ${KAKAOPAY_KEY} 이런식으로 yml에 있다고 할 때
-
미해결쿠버네티스 어나더 클래스-Sprint4 (#Promethues #Grafana #Loki #OpenTelemetry)
리소스(CPU, Memory) 이해하기 유익한 시간이었습니다.
현업에서 애플리케이션의 파드의 적정한 CPU와 Memory에 대해 어떻게 설정해야 하는지 막막했는데 이번 강의를 통해서 큰 그림을 알 수 있어서 좋았습니다.사용 현황을 모니터링할 때 어떻게 봐야하는지 몰랐는데 큰 도움이 되었습니다. 감사합니다.혹시 Java 애플리케이션 기준으로 메모리 튜닝에 대한 부분에 대해 추가적으로 공부하려면 어떤 자료를 참고하면 좋을까요?
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
AI #4 질문
퍼셉션과 시각정보를 이용하지 않고 OverlapMultiByChannel로 적을 탐지하면 장점이 있을까요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
!!필독!! 흔한 에러 해결법 처리 후 오류 발생
출첵 프로젝트를 진행하면서 !!필독!! 흔한 에러 해결법 적용 후 아래와 같은 오류가 발생합니다.그리고 지금까지 진행했던 모든 프로젝트도 동일한 문제가 발생을 하고 있습니다.어디서부터 처리를 해야 할지 몰라 문의드립니다.수고하세요. Launching lib/main.dart on iPhone 15 Pro in debug mode...Running Xcode build...Xcode build done. 5.0sFailed to build iOS appUncategorized (Xcode): Command SwiftGeneratePch emitted errors but did not return a nonzero exit code to indicate failureError (Xcode): no such file or directory: '/Users/cspark/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation'Error (Xcode): stat cache file '/Users/cspark/Library/Developer/Xcode/DerivedData/SDKStatCaches.noindex/iphonesimulator18.2-22C146-07b28473f605e47e75261259d3ef3b5a.sdkstatcache' not foundError (Xcode): unable to rename temporary '/Users/cspark/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/1QOPLZ3HJICL2/CoreFoundation-18CWDCA31ANYQ-d0b62197.pcm.tmp' to output file '/Users/cspark/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/1QOPLZ3HJICL2/CoreFoundation-18CWDCA31ANYQ.pcm': 'No such file or directory'Error (Xcode): could not build module 'CoreFoundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:5:9Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:7:8Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CoreImageDefines.h:18:8Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceObjC.h:14:8Error (Xcode): could not build module 'IOSurface'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CVPixelBufferIOSurface.h:25:9Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/OpenGLES.framework/Headers/EAGL.h:7:9Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLTypes.h:7:8Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransform3D.h:11:8Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/Symbols.framework/Headers/Symbols.h:7:8Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/FileProvider.framework/Headers/NSFileProviderDomain.h:7:8Error (Xcode): could not build module 'Foundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/UserNotifications.framework/Headers/NSString+UserNotifications.h:7:8Error (Xcode): could not build module 'UIKit'/Users/cspark/projects/play/flutters/codefactory/beginner/chool_check/build/ios/Debug-iphonesimulator/Flutter.framework/Headers/FlutterAppDelegate.h:7:8Error (Xcode): could not build module 'CoreVideo'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator18.2.sdk/System/Library/Frameworks/CoreMedia.framework/Headers/CMFormatDescription.h:28:9Error (Xcode): could not build module 'Flutter'/Users/cspark/projects/play/flutters/codefactory/beginner/chool_check/ios/Runner/GeneratedPluginRegistrant.h:9:8Error (Xcode): failed to emit precompiled header '/Users/cspark/Library/Developer/Xcode/DerivedData/Runner-emezfpbjmptfqfbicgzbemweekcj/Build/Intermediates.noindex/PrecompiledHeaders/Runner-Bridging-Header-swift_3HPZX5JRZJTXL-clang_1QOPLZ3HJICL2.pch' for bridging header '/Users/cspark/projects/play/flutters/codefactory/beginner/chool_check/ios/Runner/Runner-Bridging-Header.h'Uncategorized (Xcode): Command PrecompileSwiftBridgingHeader emitted errors but did not return a nonzero exit code to indicate failureUncategorized (Xcode): Command SwiftEmitModule failed with a nonzero exit codeSwift Compiler Error (Xcode): No such file or directory: '/Users/cspark/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation'Swift Compiler Error (Xcode): Stat cache file '/Users/cspark/Library/Developer/Xcode/DerivedData/SDKStatCaches.noindex/iphonesimulator18.2-22C146-07b28473f605e47e75261259d3ef3b5a.sdkstatcache' not foundSwift Compiler Error (Xcode): Clang importer creation failedCould not build the application for the simulator.Error launching application on iPhone 15 Pro.
-
해결됨실무 환경 그대로 주문게시판 만들기 웹개발 기초 마스터
강의 연장은 유료로 진행해야만 하나요..?
업무가 바빠서 강의를 제대로 못듣고 넘겼거나 이해가 덜 된 부분들이 있어서 좀만 더 연장하고 싶은데 강의 수강 기간이 끝나면 그냥 다시 처음부터 유료 결재를 진행해야만 할까요....???? 강의 종료 기간 기준 1주일 정도만 더 연장하고 싶은데 혹시 1주일치만 결재가 가능할지 궁금합니다 ㅠㅠ
-
미해결김영한의 실전 자바 - 기본편
참조형과 메소드호출-활용 6:15에서의 문제풀이
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]public class method1 { public static void main(String[] args) { woon("학생1",15,90); woon("학생2",16,80); } public static void woon(String a, int b, int c) { Student student= new Student(); student.name= a; student.age= b; student.grade= c; System.out.println("이름: "+student.name+", 나이: "+student.age+", 성적: "+student.grade); } }이렇게 하면 코드가 더 간결해지는거 아닌가요? 이렇게 하면 어떤걸 활용 하지 않게 되는것이고, 안되는것인지 궁금합니다.
-
미해결3D 모델링 입문을 위한 라이노(Rhino) '꿀팁' Part.2
아이폰모델링디테일올리기
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님 아이폰 모델링 디테일 올리기하고있는데 part1에서 했던 아이폰 목업이 아닌새로 만들어서 했는데 아이폰 목업을 어떻게 가져와야될지 모르겠어서요 어떻게 해야될까요?
-
미해결[켠김에 출시까지] 유니티 방치형 키우기 게임 (M1 + C1)
M1의 리소스매니져 클리어 타이밍에 대해 여쭤보고싶습니다.
강의에서는 Clear()를 사용하시지 않았는데일반적으로 규모가 있는 게임이면 Clear 타이밍이 어떻게 될까요?
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
이전 강의 이후 파드 제거??
무게감 있게 설치하는 방법 3/3 - 최종 정리 이후대시보드에 파드가 17개가 있습니다.Loki를 실습하기 위해서 파드를 다 지워도 되는건가요?
-
미해결쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)
영상과 일치하는 Vagrantfile 버전이 있을까요?
curl -O https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/vagrant-2.4.3/Vagrantfile로 다운시 파일의 버전이 강의와 맞지않아서 당시에 사용하신 파일을 받을 수 있는 링크가 있을까요?
-
미해결대용량 채팅 TPS 처리를 위한 웹소켓 통신 만들며 학습하기
프론트쪽이 리액트로 되어있는데요..
html 과 js 로 이루어진 페이지에서 쓰려고 했는데리액트에서 소켓관련된 어떤 라이브러리를 쓰시는 것 같아서 변경하는데 하기에 어려운 난이도 일까요 ?초보라서요 ..ㅠㅠ
-
미해결스프링 시큐리티 OAuth2
RFC 문서에서의 AccessToken 발급 방식 궁금한점
강사님 안녕하세요. 진짜 오랜만에 질문드립니다. 다름이 아니라 제가 Authorization Code Grant 방식에서의 OAuth2 인증 인가 프로세스를 RFC 문서에서 읽고 있었습니다. https://datatracker.ietf.org/doc/html/rfc6749#section-4.1에 따르면, (E) The authorization server authenticates the client, validates the authorization code, and ensures that the redirection URI received matches the URI used to redirect the client in step (C). If valid, the authorization server responds back with an access token and, optionally, a refresh token. (E) 인증 서버는 클라이언트를 인증하고, 인가 코드(authorization code)의 유효성을 검사하며, (C) 단계에서 클라이언트를 리다이렉션할 때 사용된 리디렉션 URI가 받은 URI와 일치하는지 확인합니다. 만약 유효하다면, 인증 서버는 액세스 토큰(access token)과 선택적으로 리프레시 토큰(refresh token)을 응답으로 반환합니다. 라고 나와있습니다. 즉, AccessToken 을 요청할때 Http Body 에 명시하는 redirect_uri 주소가, Authorization Code 를 발급할 때 사용한 redirect_uri 와 같으면 이를 유효한 요청이라 판단하고, AccessToken 을 내려준다고 나와있는데요. 근데 우리의 Application. 즉, Client 가 React 와 Spring 으로 나누어진 환경이며, 인가코드 발급은 Front, 나머지는 Back 이 담당한다고 한다면. Frontend 가 Authroization Code 를 발급받고(redirect uri 는 Front 주소) 인가코드를 가지고 Backend 의 특정 Endpoint 에 요청을 찌른다. Backend 가 그 Authroization Code 를 받고, RestTemplate 로 token uri 주소로 code&redierct_uri(백엔드 redirect uri) 등등을 body 에 명시하여 넘길텐데.. 인가서버는 어떻게 엑세스토큰을 내려주는건가요?분명 Frontend 가 Authorization Code 를 발급받을때는 redirecturi 가 Frontend 주소였을테고, Backend 가 AccessToken 을 요청할때 사용된 redirecturi 는 Backend 주소일텐데.. 좀 궁금합니다. OAuth2 Provider 마다 다른걸까요? 많은 블로그에서는 제가 적은 프로세스대로 구현한다고 나와있어 의문점이 들었습니다. 우선 현재는 Spring OAuth2 모듈을 사용하지 않고, 프로젝트 경량화를 위해 OAuth2 Client 모듈이 수행하는 과정을 백엔드에서 직접 모두 구현하여 처리하는 흐름으로 구현해놓긴 했습니다.
-
해결됨[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스
피그마 링크
안녕하세요 ~수업 듣기 시작하고 싸이월드 만들기 1탄에서 피그마가 나오는데 예제자료를 보면서 할수 있는 피그마 링크가 어디에 있는지요 ?
-
미해결
강의 구매시 구매자 변경
강의 구매시 설정된 구매자 이름을 핸드폰번호로 작성했습니다. 변경 가능한가요?변경부탁드립니다.