현재 제 상황은 이러합니다 Oauth2Service에서 검증을 하고 여기서 회원 생성을 할 수 있습니다. (현재는 빼놓은 상태) 그리고 successhandler까지 구현했습니다. 이 상태입니다. 근데 저는 로그인을 성공했을 경우, 핸들러를 타지 않고 8080:/ 주소로 이동합니다. 이러한 경우에 어떻게 토큰을 발급하고 적용할 수 있는지 모르겠습니다. apply로 정의한 함수때문에 핸들러를 거치지 않는 걸까요? apply로 정의한 함수는 강사님 JWT 강의랑 똑같습니다.
clientFundamentals 클라이언트앱 커리큘럼을 실습하고 있는데요 저는 9090 포트를 프로젝트의 서버 포트로 설정하고 8080으로 키클락을 띄운상태인데요 server: port: 9090 spring: security: oauth2: client: registration: # 클라이언트 설정 keyclock: authorization-grant-type: authorization_code # Oauth 2.0 권한부여타입 client-id: oauth2-client-app # 서비스 공급자에 등록된 클라이언트 아이디 client-name: oauth2-client-app # 클라이언트 이름 client-secret: XkPnnSZ9RLdMX6vJBsgcbTIL7gtYJ8m8 # 서비스 공급자에 등록된 클라이언트 비밀번호 redirect-uri: http:localhost:9090/login/oauth2/code/keyclock # 인가서버에 권한 코드 부여 후 클라이언트로 리다이렉트하는 위치 authorizationGrantType: authorization_code clientAuthenticationMethod: client-secret-basic # 클라이언트 자격증명 전송방식 scope: openid,profile,email # 리소스에 접근 제한 범위 provider: # 공급자 설정 keyclock: authorization-uri: http://localhost:8080/realms/oauth2/protocol/openid-connect/auth # oauth 2.0 권한 코드 부여 엔드포인트 issuer-uri: http://localhost:8080/realms/oauth2 # 서비스 공급자 위치 jwk-set-uri: http://localhost:8080/realms/oauth2/protocol/openid-connect/certs token-uri: http://localhost:8080/realms/oauth2/protocol/openid-connect/token user-info-uri: http://localhost:8080/realms/oauth2/protocol/openid-connect/userinfo user-name-attribute: preferred_username user 아이디로 로그인시 강나님처럼 do you grant these access privilliges? 화면이 뜨지않고 http://localhost:8080/realms/oauth2/login-actions/localhost:9090/login/oauth2/code/keyclock?state=kCCPxAYfg3uXfG7M_vmcVzq4FVQIldvt_3viiZlE0U0%3D&session_state=09a4fb12-19eb-4f15-991e-24365d7b5b05&code=6b7b3d33-8f8f-4979-8bfe-e038f7a275a4.09a4fb12-19eb-4f15-991e-24365d7b5b05.2912d929-159d-4403-b7cb-7e7cb0d24f5e 해당 URI 로 이동하면서 we are sorry... page not found가 뜹니다 어떤부분이 누락되서 오류가 나는건지 모르겠습니다
안녕하세요 제로초님 강의 잘 듣고 있습니다. 우선 에러가 발생하여 질문하는 것은 아니구요. axios와 swr을 활용하는 과정에서 의문점이 생겨서 질문을 드렸습니다. axios 로 로그인 api를 호출하게되면 response에 로그인한 유저의 정보를 받을 수 있는데 로그인이 성공한 후 swr을 사용해서 유저 정보 조회 api를 서버에 get요청으로 다시 받아 쓰는 이유가 뭔지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 인텔리제이 에서 자동으로 경로패키지도 만들어주나요 ? 강의내에서 WEB-INF/views/new-form.jsp 를 만들어놓지 않았는데 패키지도,jsp파일도요 이렇게 선언했다고 해서 인텔리제이에서 감지해서 자동으로 패키지경로+jsp파일까지 만들어줄수가있나요? 미리 만들어져있길래 소름이 돋아서 물어봅니다
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); N = Integer.parseInt(br.readLine()); M = Integer.parseInt(br.readLine()); graph = new boolean[N][N]; visited = new boolean[N]; int x, y; for (int i=0; i<=M; i++) { StringTokenizer tokenizer = new StringTokenizer(br.readLine()); x = Integer.parseInt(tokenizer.nextToken())-1; y = Integer.parseInt(tokenizer.nextToken())-1; graph[x][y] = true; graph[y][x] = true; } dfs(0); System.out.println(answer - 1); br.close(); } void dfs(int index) { visited[index] = true; IntStream.range(0, M).forEach(i -> { if (!visited[i] && graph[index][i]) dfs(i); }); answer++; } 위에처럼 저는 +1을하지않고(그래프에 0인덱스들은 사용을 안한다고 생각해서요.) 대신 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수를 입력받을 때 -1을해줘서 처리했는데요. 예제입력은 정상처리 되나 실제 제출해보면 런타임 에러 (ArrayIndexOutOfBounds)가 발생합니다. +1을 해줘야하는거같은데... 제가 생각한 배열사이즈, -1로 입력받기가 잘못된걸까요?
사용법 ) 첨부 파일 다운로드 및 압축해제 하신 후, IntelliJ 에서 (1) File 메뉴 (2) Open (3) JavaWorkspace (압축 해제된 폴더) 선택 (4) Trust Project 선택 하시면 프로젝트를 확인하실 수 있습니다. 3번에서 폴더 누르고 확인 누르면 팝업창이 꺼지는데... Trust Project가 뭘 의미하는지 모르겠습니다..!
안녕하세요. 강의를 잘 보고 테스트를 하고 있는데 안되는 부분이 있어 글을 올립니다. 응용프로그램에서 리스트가 있어 스크롤을 맨 하단까지 가서 글을 넣는 것을 자동화 하고 싶어서 스크롤 기능을 보니 simulate scroll wheel down 이라는 것이 있어서 사용해 봤습니다. 이 것이 픽셀 단위를 넣는데 999보다 더 큰 값을 넣을 수 없어 988 값을 넣고 두번 반복하도록 했는데, 시작할 때는 스크롤 두번이 되더니, 여러번 반복 루틴에 들어가서는 스크롤 두번이 안되고 한번만 됩니다. 이런 경우는 뭐가 문제일까요?
안녕하세요. 다양한 활동들을 하던 중, 펀딩에 관심이 생겨서 찾아보다가 괜찮은 프로그램을 발견해서 배웠더니 직접 상품을 기획하고 펀딩 사이트에 등록해보게 됐어요. 처음에는 조금 어려웠지만 멘토의 서포트 받으면서 결국 상품 등록 성공했습니다. 혹시 펀딩이나 해당 프로그램에 관심 있으신분 쪽지주세요!
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 김영한 강사님의 스프링 핵심 원리 -기본편 을 수강중입니다. 리스트와 맵으로 받아오는 부분을 듣고 있는데 리스트는 정상 출력 되지만, 맵이 정상 출력이 되지 않습니다. 또한 @Autowired가 빨간줄이 뜨며 에러표시가 됨니다... 에러 메시지는 autowired members must be defined in valid spring bean 이렇습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 윈도우 사용자는 cmd에서 하는건가요?
안녕하세요 큰돌선생님 저는 deque 자료구조와 queue 자료구조를 이용하여 문제를 풀었는데요, 예제입력을 집어넣었을때 정답을 출력하지만 코드가 끝나지 않고 계속 돌아가더라구요. 일단 모르겠다 하고 백준에 제출하니 맞았다고 떠서 좀 당황스러운데.. 혹시 어디가 잘못된거 일까요? 사진은 예제2 입력을 넣었을때 입니다. 예제1번과 3번은 정상적으로 출력 후 코드가 종료됩니다. 작성한 코드입니다 http://boj.kr/444ceed7f7844486bcc6feeb7d3d8e37
서브넷 마스크 강의를 듣다가 몇가지 질문이 있어서 질문 드립니다! 12개의 장치를 확보하기 위해 /28의 서브넷 마스크를 할당해야 하는 것은 이해했는데요. 예제로 주신 IP가 123.12.12.12인데 맨 앞자리가 192부터 시작해야 하는거 아닌가 생각이 들어서 말씀드립니다. 클래스풀과 클래스리스는 다르게 생각해야 하는 걸까요?? 예제 IP인 123.12.12.12/28은 123.12.12.12라는 IP의 서브넷 마스크가 255.255.255.240이다 라고 표기하신게 맞을까요?? 질 높은 강의로 많은 지식 전달해 주셔서 항상 감사합니다!!
안녕하세요~ 선생님. 강의를 복습하다 보니 compare_exchange_strong 문법에 호기심이 생겨서 찾아보니, atomic과 compare_exchange_strong은 C++ 11 부터 추가된 문법이라고 그러더라고요. 저는 현재 연습용으로 옛날 문법(C++ 11 이전)을 이용해서 Read-Write Lock을 구현해보려고 하는데 atomic 과 compare_exchange_strong,weak 없이 구현할 수 있을까요? ㅠㅠ...
안녕하세요 수업 잘 듣고 있어요 :) DRF 시리얼라이저 궁금한 게 있는데.. 시리얼라이저에서 update, create, save를 오버라이딩 할 수 있는데, 이게 json으로 들어온 값을 객체로 만들어서 바로 DB에 넣기 위해 존재한다고 보면 맞을까요? 장고는 MVT 모델이잖아요, 프론트엔드를 react로 하게 되면 DRF에서는 M, V만 건들면 될 것 같고 Model을 수정하는 create, update, save 같은 로직은 view단에서 해야할 거 같은데 왜 이게 시리얼라이저에 들어가 있는 지 궁금해요 ㅜㅜ 예를 들어 회원가입 요청이 json, post요청으로 날아오면 View단에서 CreateAPIView의 post 함수 오버라이딩 하면서 시리얼라이즈하면서 객체 A로 만들어주고, 이걸 someModel.objects.create (A)해야할 것 같은데, 이게 왜 serializer 속으로 들어가 있는 지 궁금합니다.
각 마이크로서비스에서 지정하는 config name이 파일 명으로 들어가는데요, 만약 다른 확장자의 동일이름인 파일인 경우 어떻게 되는건가요? ecommerce.yml, ecommerce.properties name을 ecommerce로만 지정해도 되는 이유가 무엇인지 궁금합니다. 단순 설정 파일의 확장자를 제외하는 이유인지 아님 yml 파일로만 config server에 등록될 수 있는지요