묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 시큐리티 OAuth2
postman userinfo 엔드포인트 질문
안녕하세요 userinfo 엔드포인트를 호출을 postman에서 하면 body에 아무런 정보가 뜨지 않고 400 상태만 반환합니다..그런데 실제 웹 브라우저에서 똑같이 헤더 추가하고 하면은 200 OK json body가 딱 떨어지는데 뭐가 문제일까요?postman에서 뭔가 잘못된 거 같은데.. 원인을 모르겠네요..
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
프로덕션 환경과 테스트 환경 Config를 다르게 가져가는 방법
안녕하세요 선생님,현재 프로젝트에서 프로덕션에서 사용하는 SecurityConfig클래스와 테스트에서 사용하는 SecurityConfig를 다르게 가져가려 합니다. 이유는 프로덕션 환경에서는 jwt필터 같이 커스텀 필터들을 적용해야하고, 테스트 환경에서는 해당 필터들을 거치지 않도록 해서 테스트를 더 편하게 하기 위함입니다.@Configuration @EnableWebSecurity public class SecurityConfig { @Bean("prodSecurityFilterChain") public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {...} ... http.addFilterBefore(jwtAuthenticationFilter, UsernamePasswordAuthenticationFilter.class); ... }@TestConfiguration @EnableWebSecurity public class TestSecurityConfig { @Bean("testSecurityFilterChain") public SecurityFilterChain testSecurityFilterChain(HttpSecurity http) throws Exception {...} //필터 없음 }위 처럼 작성하였습니다.컨트롤러 테스트 시@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @ActiveProfiles("test") public class InterfaceTest { @LocalServerPort private int port; @BeforeEach void setUp() { RestAssured.port = port; } }위의 클래스를 상속받아서 테스트를 구현합니다. 제 의도는 테스트 시에는 @TestConfiguration이 주어진 SecurityConfig를 기반으로 설정이 될거고TestSecurityConfig에는 jwt필터가 없으니, 테스트 코드에서는 필터를 거치지 않고 잘 수행이 될거다 였으나, 실제 Security 디버그를 보면 2024-12-11 10:17:32 [Test worker] DEBUG org.springframework.security.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, BlackListCheckFilter, JwtAuthenticationFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter로 JwtAuthenticationFilter가 있으며, 인증처리가 안되었다는 401에러를 뱉고있습니다.질문 드립니다.1. 프로덕션 환경과 테스트 환경 Config구분시 별도의 설정이 더 필요할까요? 자료들을 더 찾아보아도 다른 방법이 없어서 질문드립니다.2. 혹시 Config를 구분하는것이 아예 불가능한것일까요??아니라면, 실무에서도 위와 같은 구조가 자주 사용되는지 등 궁금합니다.
-
해결됨이해하면 인생이 바뀌는 네트워크 프로그래밍
VMware Ethernet1이 없는 경우
Vmware 윈도우11이 ms사에서 제공하지 않아서따로 윈도우11 이미지를 받아서 VMware player에서 받아서 완전 쌩 윈도우11을 다운받앗는데cmd 창에서 ipconfig를 쳐보니까 Ehternet0 밖에 안뜹니다.
-
미해결김영한의 실전 자바 - 중급 2편
Cat에 toString 을 오버라이딩 하면...
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]위와 같이 Cat 클래스에 toString 메서드를 오버라이드 했을때 findAnimal2 의 결과가 Cat()이 나오는게 왜 그런지 모르겠습니다.. 타입 인자가 Animal이고, Cat은 Animal을 상속받은 자식 클래스기 때문에 Cat의 toString 이 나와야 하는거 아닌가요..? 어디서 놓친건지 잘 모르겠습니다.
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
10.3강 memo(Header) 리렌더링 질문
안녕하세요.컴포넌트 최적화 하는 부분에서 질문있습니다. 10.3강에서 대략 5분 40초쯤에 Header 컴포넌트에 memo 기능을 사용해서 최적화 한 뒤에, 체크박스를 클릭하면서 헤더 컴포넌트가 리렌더링이 일어났는지에 대해 확인하는 부분이 있습니다. 질문사항은 memo 기능을 통해 최적화를 하던 안하던 개발자 도구에서 Header 컴포넌트가 항상 리렌더링이 일어나는것 같은데 어떻게된걸까요? 헤더부분이 계속 노란색으로 뜨면 리렌더링이 일어났다는걸로 보이는데 강의 영상에서도 다른 컴포넌트와 동일하게 노란색으로 변경됩니다. 강의에서 TodoItem을 커스텀한 부분은 강의대로 적용됐습니다.(이부분은 리렌더링이 발생하지 않습니다.)
-
해결됨[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
카프카 2.8.2 버전과 많이 차이가 있을까요??.
강의 매우 유익하게 듣고 있습니다. 다른 질문들도 많이 찾아보았는데요 3버전은 실무에서 적극적으로 활용하고있는 사례가 없다라고 말씀하셨는데 카프카 버전이 현재기준으로는 2버전은 2.8.2버전까지 나온걸로 아는데 강의 들을 때 사용하는 2.5.0버전이 아직 현역인지 궁금합니다 ㅎㅎ (제가 근무하는 회사는 카프카 적용사례도 없고, 현황을 알기 어려워서요 ㅠㅠ) 우선 강의 기준 2.5.0으로 열심히 강의 듣고 2.8.x버전과 차이를 스스로 공부해보려고 하는데 개발하는데 차이가 없다면 2.8.2바전 기준으로 주키퍼버전도 올리고 듣는게 좋을까요? ㅎㅎ
-
미해결생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현
5:23분 테스트 결과 관련 문의드립니다.
강사님 안녕하세요 :)우선 양질의 강의 감사드립니다. ========== 1. 문제 사항에러 메시지 내 정보가 강의 내용과 다르게 반환되는 문제가 발생합니다. 404 -> 500@FeignClient(url = "http://localhost:8080", name = "helloClient") public interface HelloClient { @GetMapping(value = "/api/health2", consumes = "application/json") HealthCheckResponse healthCheck(); } { "errorCode": "500 INTERNAL_SERVER_ERROR", "errorMessage": "[500] during [GET] to [http://localhost:8080/api/health2] [HelloClient#healthCheck()]: [{\"errorCode\":\"500 INTERNAL_SERVER_ERROR\",\"errorMessage\":\"No static resource api/health2.\"}]"} ========== 2. 문제 파악전역 예외 처리 코드와 에러 디코더 코드에 디버깅 포인트를 걸고 확인한 결과, 전역 예외처리 코드가 먼저 실행되어 에러 디코더로 넘어가는 시점에는 이미 500 에러가 반환되는 것 같습니다. 이에 전역 예외 코드를 주석처리하고 재실행하면,에러 디코더에서 404 에러가 반환되는 점까지는 확인했습니다. ========== 해당 문제 외 다른 테스트 결과는 모두 강의 내용과 동일합니다. 혹 제가 놓치고 있는 부분이 어떤 부분일지요? 방법이나 키워드 말씀 주시면 참고하겠습니다.더불어 @ExceptionHandler와 ErrorDecoder를 동시에 사용할 경우, 구체적으로 설정한 ErrorDecoder의 예외 처리 이후에 전역 예외 처리가 실행되는 흐름일지요? 두 기능을 함께 사용할 때 예외 처리의 흐름 간략히 설명해주시면 학습에 참고하겠습니다. :) @RestController @RequestMapping("/api") @RequiredArgsConstructor public class HealthFeignTestController { private final HelloClient helloClient; @GetMapping("/health/feign-test") public ResponseEntity<HealthCheckResponse> healthCheckTest() { HealthCheckResponse healthCheckResponse = helloClient.healthCheck(); return ResponseEntity.ok(healthCheckResponse); } } @Configuration @EnableFeignClients(basePackages = "com.app") @Import(FeignClientsConfiguration.class) public class FeignConfiguration { @Bean public ErrorDecoder errorDecoder() { return new FeignClientExceptionErrorDecoder(); } @Bean public Retryer retryer() { return new Retryer.Default(1000, 2000, 3); } }
-
해결됨컴팩트하게 이해하고 바로 구현하는 Kubernetes ELK 로그 모니터링 시스템
수업 노트를 다운로드 받으려고 하는데 어디에 있나요
강의 중간에 나오는 건가요?메니페스트 파일을 다운로드 받을 수 있는 githun 링크가 나온다고 해서 찾아보는데 다운로드 받는 곳이 보이지 않아서요
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
Xilinx Vivado 2022.2 설치 에서 자꾸 에러가 납니다.
안녕하세요 🙂vivado설치 강의를 보고 있는데 vi /root/.Xilinx/install_config.txt 를 치면 ~표시만 나타나요.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
tomcat 서버에 배포하기
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.hello-world으로 들어가면 찾을 수 없음 오류가 나오는데 어느 부분이 오류인지 잘 모르겠습니다.
-
해결됨프로젝트로 쉽게 배우는 Svelte(SvelteKit + Supabase)
영호 좋아요 버튼이 콘솔에는 잘 찍히지만 화면에 렌더링 되지 않습니다.
<script> import { data } from "./lib/movies"; import Navbar from "./lib/components/Navbar.svelte"; import Modal from "./lib/components/Modal.svelte"; import Movies from "./lib/components/Movies.svelte"; const handleLike = (i) => { data[i].likeCount += 1; }; let isModal = false; let selectedMovie = 0; const closeModal = () => { isModal = !isModal; }; </script> <Navbar /> <Movies {data} bind:selectedMovie {closeModal} {handleLike} /> {#if isModal} <Modal {data} {selectedMovie} {closeModal} /> {/if}<script> export let selectedMovie; export let data; export let closeModal; export let handleLike; </script> <main class="container"> <h1>영화정보</h1> {#each data as movie, i} <div class="item"> <figure> <img src={movie.imgUrl} alt={movie.title} /> </figure> <div class="info"> <h3 class="bg-yellow">{movie.title}</h3> <p>개봉 : {movie.year}</p> <p>장르: {movie.category}</p> <button on:click={() => { console.log(i, data[i].likeCount); handleLike(i); }}>좋아요 {data[i].likeCount}</button > <button class="btn btn-primary" on:click={() => { closeModal(); selectedMovie = i; }}>상세보기</button > </div> </div> {/each} </main> <style> .bg-yellow { background-color: gold; padding: 10px; color: #333; } .item { width: 100%; border: 1px solid #ccc; display: flex; margin-bottom: 20px; padding: 1rem; } .item figure { width: 30%; margin-right: 1rem; } .item img { width: 100%; } .item .info { width: 100%; } </style> const data = [ { title: "파묘", year: 2024, category: "미스터리, 공포", likeCount: 0, imgUrl: "/images/images1.jpg", story: "미국 LA, 거액의 의뢰를 받은<br>무당 ‘화림’(김고은)과 ‘봉길’(이도현)은<br>기이한 병이 대물림되는 집안의 장손을 만난다.<br>조상의 묫자리가 화근임을 알아챈 ‘화림’은 이장을 권하고,<br>돈 냄새를 맡은 최고의 풍수사 ‘상덕’(최민식)과 장의사 ‘영근’(유해진)이 합류한다.", }, { title: "고질라 X 콩: 뉴 엠파이어", year: 2024, category: "어드벤처, 액션, SF", likeCount: 0, imgUrl: "/images/images3.jpg", story: "‘고질라’ VS ‘콩’, 두 타이탄의 전설적인 대결 이후<br>할로우 어스에 남은 ‘콩’은 드디어<br>애타게 찾던 동족을 발견하지만<br>그 뒤에 도사리고 있는 예상치 못한 위협에 맞닥뜨린다.", }, { title: "듄: 파트2", year: 2024, category: "액션", likeCount: 0, imgUrl: "/images/images2.jpg", story: "황제의 모략으로 멸문한 가문의 유일한 후계자 폴.(티모시 샬라메)<br>어니 레이디 제시카(레베카 퍼거슨)와<br>간신히 목숨만 부지한 채 사막으로 도망친다.<br>그곳에서 만난 반란군들과 숨어 지내다<br>그들과 함께 황제의 모든 것을 파괴할 전투를 준비한다.", }, ]; export { data }; 영화 컴포넌트 나누기 하고있는데 좋아요 버튼을 누르면 영화 인덱스랑 좋아요 +1은 잘되는데 화면에 렌더링 되지 않습니다...!
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
lombok이 적용이안되는이유
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. getter,setter이 적용이안됩니다.1.enable 세팅해서 체크함2.스프링 프로젝트만들대 디펜전씨에 롬복추가함 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional></dependency>3.플러그인 깔려있음 3가지 다 적용되어있는데 뭔 symbol?이런 에러뜨면서 롬복적용이안된데요
-
미해결
안녕하세요 아래 질문은 UTF-8로 해결하니까 또 오류가 나요
중복된 아이디가 없는데 인서트할때마다 웹페이지에서 아래같은 오류가 나는데 db에는 잘 등록되어 있어요
-
미해결AWS 배포 완벽가이드 (feat. Lightsail, Docker, ECS)
영상 중복
안녕하세요, 강의 잘 보고 있습니다. 다름이 아니라, 섹션 11의 섹션 소개 영상과, 섹션 12의 섹션 소개 영상이 중복되는 것 같아서 여쭤봅니다. 섹션 12는 따로 섹션 소개 영상이 없는걸까요? 아니면 단순 업로드 오류인걸까요? 감사합니다.
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
26강에서 member1에 사진 인서트할때 500 오류가 떠요
그 전에 alert로 파일이름 출력할때는 사진도 폴더에 잘들어가고 하는데 그 후에 member1에 인서트할때 아래같은 오류가 뜨네요 코드 몇번이고 다시 확인하고 했는데 똑같아요 ㅠ
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
코딩테스트 디버깅
안녕하십니까 좋은 강의 잘보고있습니다!디버깅에 관한 중요성을 알려주셨는데 요새 코딩테스트는 IDE를 허용하지않는 경우가 꽤 있는것으로 알고있습니다.이러한 경우에는 어떻게 처리하시나요?
-
해결됨[UI3 업데이트] 피그마 배리어블을 활용한 디자인 시스템 구축하기
디자인 시스템 세팅 임포트
안녕하세요, 디자인 시스템 세팅하는데 있어 텍스트 세팅 부분 부터 수업을 잘 따라가지 못하겠습니다. 다음 스텝으로 넘어가려면 이미 베리어블들 세팅이 되어 있어야하는 것 같은데, 이미 만들어진 버전 임포트 하는 방법 없나요? 일단 진도는 나가고 완강 후 다시 돌아가야할 것 같습니다.
-
미해결FastAPI 완벽 가이드
rollback에 대해 질문 드려요
현재 "신규 Blog 글 생성하기 - 01" 강의를 수강 중입니다.강의 중에, 쿼리의 commit() 실패시 rollback()이 자동으로 수행된다고 말씀 하셨는데,코드상에 with를 사용한 것도 아니고, context_get_conn()의 에러 발생시 rollback() 호출도 하지 않는데rollback()이 자동으로 수행되는게 맞는가요?close를 하면 자동으로 rollback() 된다고 하시는데close는 성공시에도 호출하는 것으로 코드를 이해하고 있습니다.insert, update의 성공시에도 rollback()이 되는게 맞는지도 알고 싶습니다.
-
미해결토비의 스프링 6 - 이해와 원리
실무에서 Clock 사용 여부
안녕하세요, Clock 사용한 테스트를 보면서 의문점이 생겼습니다. 실제로 실무에서도 시간 관련된 로직이 있는 클래스에는 Clock을 Bean으로 만들어서 주입해 사용하는 것이 일반적인가요? 그냥 LocalDateTime을 쓰는 경우를 많이 본 것 같아서 의문이 들었습니다. 만약 아니라면, 어떠한 다른 방법이 주로 사용되는지, 토비님은 어떤 방식을 선호하시는지 궁금합니다! 감사합니다~
-
미해결스프링 핵심 원리 - 기본편
javax, jakarta
[질문 내용]애노테이션 @PostConstruct, @PreDestroy 강의에서 1:07쯤에 김영한 강사님께서 두 @PostConstruct, @PreDestroy 애노테이션을 import하는 과정에서 강사님 화면에서는 import javax.annotation 으로 시작하는 반면에, 제 입장에서는 import jakarta.annotation 로 시작하는데 두 개의 차이점이 무엇인가요?