묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
find로 댓글을 가져오는 부분이 이상합니다
console.log로 action과 post를 찍어봤는데 post의 값이 이상합니다redux dev tools도 확인해보면 제가 지금 넣은 데이터의 형식이 content만 들어가 있습니다 어떻게 해야하나요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
create() 함수에서 input tag에서의 값을 MemberForm으로 받는 이유가 있나요?
@PostMapping("members/new") public String create(String name){ Member member = new Member(); member.setName(name); MemberService.join(member); return "redirect:/"; }위 코드처럼 String을 이용해 form에서 데이터를 받아오면 안 되는 건지 궁금합니다
-
미해결[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]
4분 30초경 데이터프레임 합치는 부분 질문입니다
안녕하세요 4분 30초경 질문입니다doc = pd.merge(doc1, doc2, how='outer', left_index=True, right_index=True)를 사용하면 doc1과 doc2의 양쪽 인덱스를 기준으로 데이터프레임이 병합되는 걸로 이해했는데요left_index=True만 사용해서 왼쪽 인덱스를 기준으로 병합할 수는 없나요? doc = pd.merge(doc1, doc2, how='outer', left_index=True)를 사용하니 오류가 나고 GPT는 left_index=True)만 사용해도 병합이 가능하다고 하는데 실제로는 강의처럼 없는 날짜가 NAN이 될 줄 알았는데 오류가 발생해서 질문 드립니다
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
로그인에 성공해도 name을 불러오지 못 하는거 같습니다
playgroud 에서 회원을 생성 이후 login 페이지에서 로그인을 성공적으로 하였으나 login success 페이지에서 fetchuserloggedin 이 성공적으로 이루어 지지 않는거 같습니다. 회원가입을 여러번 해서 다른 계정으로 시도해도 name 부분이 표시가 되지 않네요. 혹시 뭐가 문제일까요? import { useState } from "react"; import { gql, useMutation } from "@apollo/client"; import { IMutation, IMutationLoginUserArgs, } from "../../../src/commons/types/generated/types"; import { accessTokenState } from "../../../src/commons/stores"; import { useRecoilState } from "recoil"; import { useRouter } from "next/router"; const LOGIN_USER = gql` mutation loginUser($email: String!, $password: String!) { loginUser(email: $email, password: $password) { accessToken } } `; export default function LoginPage() { const router = useRouter(); const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [loginUser] = useMutation< Pick<IMutation, "loginUser">, IMutationLoginUserArgs >(LOGIN_USER); const [, setAccessToken] = useRecoilState(accessTokenState); const onChangneEmail = (event) => { setEmail(event.currentTarget.value); }; const onChangnePassword = (event) => { setPassword(event.currentTarget.value); }; const onClickLogin = async () => { try { //1.로그인 뮤테이션 날려서 accessToken 받아오기 const result = await loginUser({ variables: { email, password, }, }); const accessToken = result.data?.loginUser.accessToken; console.log(accessToken); //받아온 accessToken 을 글로벌 스테이트에 저장해야지 모든 애들이 쓸수 있음 if (accessToken === undefined) { alert("로그인에 실패했습니다: 다시 시도해주세요"); return; } setAccessToken(accessToken); // 3. 로그인 성공 페지이로 이동하기 void router.push("/section23/23-01-login-success"); } catch (error) { if (error instanceof Error) alert(error.message); } }; return ( <> 이메일:{" "} <input onClick={onChangneEmail} type="text" placeholder="이메일 입력" /> 비밀번호:{" "} <input onClick={onChangnePassword} type="password" placeholder="비밀번호 입력" /> <button onClick={onClickLogin}>로그인</button> </> ); } import { useQuery, gql } from "@apollo/client"; import type { IQuery } from "../../../src/commons/types/generated/types"; const FETCH_USER_LOGGED_IN = gql` query { fetchUserLoggedIn { email name } } `; export default function LoginPage() { const { data } = useQuery<Pick<IQuery, "fetchUserLoggedIn">>(FETCH_USER_LOGGED_IN); return <>{data?.fetchUserLoggedIn.name}님 환영합니다!</>; }
-
미해결실습으로 배우는 선착순 이벤트 시스템
Kafka 처리량 조절 관련 문의드립니다
며칠전 수강시작했구요. 첫 완강한 인프런 유료강의가 되었네요.앞으로도 이러한 스타일 (주제중심, 적당한 총 길이)의 강의를 더 만들어주시면 감사하겠습니다.업무환경에서 다양한 기술스택을 경험하기 어려운 개발자들도 경험하면 좋을 기술스택도 좀 포함되면 더할나위 없이 좋을것 같구요. 제 경우엔 이 강의 덕분에 아주 오래전 살짝 경험해본 Redis 를 복습하게 되었고, Kafka 에 대해서도 입문하게 되었습니다.질문드립니다.이 강의에서 Kafka 이용의 장점은 처리량 조절이라고 말씀주셨습니다.처리량 조절의 구체적인 방안은구성방식, 요건등 상황에 따라 다양한 안이 있긴 하겠지만혹시 알려주실만한 방안이 있을까요? 개인적으로 찾아본것은 컨슈머 옵션중fetch.max.wait.ms 또는 fetch.max.bytes같은 옵션을 이용하면 괜찮겠다라는 생각이 들긴 했습니다.(쓰면서 생각드는건데.... 만약 두개 동시에 이용시 OR 조건으로 동작해야 될텐데.. 라는 생각이...) 경험하신 사례이든, 참고할만한 링크이든 혹시 알려주실수 있다면 감사하겠습니다.
-
미해결[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작
CSV 파일로부터 데이터 로딩 모듈
안녕하세요.소스에 JSON 파일로부터 데이터 로딩하는 부분은 있는데, CSV 파일로부터 데이터 로딩하는 부빈이 없습니다.CSV 파일로부터 데이터 로딩하는 것을 구현할려고 하는데, 혹시 힌트 같은 것이 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
결과는 뜨는데 에러가 나옵니다 그냥 무시하면 되나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]java.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1347) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1234) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:785) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:348) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:263) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]2023-08-01 17:56:50.209 DEBUG 21464 --- [nio-8080-exec-2] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request headerjava.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1347) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1234) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:785) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:348) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:263) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]2023-08-01 17:56:50.213 DEBUG 21464 --- [nio-8080-exec-2] o.apache.coyote.http11.Http11Processor : Error state [CLOSE_CONNECTION_NOW] reported while processing requestjava.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1347) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1234) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:785) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:348) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:263) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]2023-08-01 17:56:50.213 DEBUG 21464 --- [nio-8080-exec-3] o.apache.coyote.http11.Http11Processor : Error state [CLOSE_CONNECTION_NOW] reported while processing requestjava.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1347) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1234) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:785) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:348) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:263) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:926) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.78.jar:9.0.78] at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]2023-08-01 17:56:50.215 DEBUG 21464 --- [nio-8080-exec-2] o.apache.coyote.http11.Http11Processor : Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@b93f867:org.apache.tomcat.util.net.NioChannel@44fa23bd:java.nio.channels.SocketChannel[connected local=/0:0:0:0:0:0:0:1:8080 remote=/0:0:0:0:0:0:0:1:61117]], Status in: [OPEN_READ], State out: [CLOSED]2023-08-01 17:56:50.216 DEBUG 21464 --- [nio-8080-exec-3] o.apache.coyote.http11.Http11Processor : Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@294549a5:org.apache.tomcat.util.net.NioChannel@38789ba9:java.nio.channels.SocketChannel[connected local=/0:0:0:0:0:0:0:1:8080 remote=/0:0:0:0:0:0:0:1:61116]], Status in: [OPEN_READ], State out: [CLOSED] 이런 에러가 뜹니다.
-
미해결프로그래머를 위한 강화학습(저자 직강)
cartpole_DQN 에러
github에 있는 cartpole_DQN 코드를 그대로 사용하는데 위와 같이 에러가 뜹니다. 별도로 수정한 내용은 없고 우분투 20.04, 코랩에서 돌렸습니다.
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
null? blank? 차이
- 여러분의 질문을 고대하고 있습니다. :-)- 질문 전에 검색을 먼저 해보세요. 사람 사는 게 다 비슷하다는 것을 알게 됩니다.- 예의는 거침없이 질문하기 위한 최고의 발명품입니다.- 100개의 설명이 스크린샷 한방 보다 못할 수 있습니다.- 코드를 첨부하면 전세계 누구나 이해할 수 있는 질문이 됩니다.- 하나의 질문에는 하나의 주제를 담아야 답변도 예리해집니다.- 시행착오를 알려주시면 곧 바로 원하는 문제에 집중할 수 있습니다.- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 선생님 혹시 model 생성시 null=True와 blank=True의 차이점은 뭔가요? 둘다 값을 부여하지않아도 된다라는 식으로 이해하고 있어서요
-
미해결태블로 지도 시각화, 기초부터 고급까지
헥스 타일맵 작성시 좌표생성
헥스 타일맵 작성시 좌표 생성은 어떤 식으로 해야 쉽게 할 수 있을까요? 시도와 시군구 경우, 좌표 템플렛을 제공해 주셔서 활용이 가능한데, 만약 미국을 주별로 좌표를 생성한다던가 아시아국가들을 좌표로 생성한다던가 하는 것으로 활용한다고 가정한다면 이럴 경우, 좌표 생성은 어떤 식으로 하면 될까요?
-
미해결
cartpole_DQN 에러
github에 업로드된 cartpole_DQN을 그대로 colab에서 사용중인데 다음과 같은 에러가 뜹니다.어떻게 해야 하나요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
Button is not defined
프로필 탭 들어갈 시 Button is not defined 이라는 오류가 뜹니다 제 코드는 import React from "react"; import PropTypes from "prop-types"; import { List } from "antd"; import Item from "antd/lib/list/Item"; import { StopOutlined } from "@ant-design/icons"; import { isStyledComponent, keyframes } from "styled-components"; const FollowList = ({ header, data }) => { return ( <List style={{ marginBottom: 20 }} grid={{ gutter: 4, xs: 2, md: 3 }} size="small" header={<div>{header}</div>} loadMore={ <div style={{ textAlign: "center", margin: "10px 0" }}> <Button>더 보기</Button> </div> } bordered dataSource={data} renderItem={(Item) => ( <List.Item style={{ marginTop: 20 }}> <Card actions={[<StopOutlined key="stop" />]}> <Card.Meta description={Item.Nickname} /> </Card> </List.Item> )} /> ); }; FollowList.propTypes = { header: PropTypes.string.isRequired, data: PropTypes.array.isRequired, }; export default FollowList; 입니다 무엇이 문제 일까요?
-
해결됨
강사님 좋은 강의 감사드리며 궁금한 사항이 있어서 질문 드립니다.
스프링부트를 기동시키면 @Configuration 에 의해 존재하는 모듈들을 참고하여 환경을 자동 구성하는 것으로 알고 있습니다. 하지만 우리가 자체로 제작한 imports 파일에 jetty 와 tomcat , dispatcher 가 를 작성하여 이의 조건에 따라 이를 구성하였는데 이건 스프링 부트 자체에서 해주는 일들과 충돌이 발생하지 않는 건지요? 만약 발생하지 않는다면 그 이유는 사용자가 설정한 환경이 먼저 구성되고 스프링 부트는 @ConditionalOnMissingBean 을 사용하여 사용자가 생성한 빈을 따로 생성하지 않기 때문인지요 ? 제 생각이 틀렸으면 정확한 지적 부탁드립니다. 감사합니다.
-
미해결Vue.js + TypeScript 완벽 가이드
두번째 프로젝트 권한 요청 드려요~
닉네임: JAESEOK깃헙 아이디: sjs1@cudo.co.kr감사합니다~
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HomeController 클래스 통해서 home.html 렌더링되는 과정이 이게 맞는 건지 궁금해요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]1. 애플리케이션이 실행될 때, @Controller annotation이 있는 HomeController class의 instance가 스프링 컨테이너에 bean으로서 등록2. 사용자가 localhost:8080 입력하면 tomcat 서버가 받고, 스프링 컨테이너에 @GetMapping("/")이 있는 bean 탐색3. HomeController class 내부에 있는 home()이 @GetMapping("/")이 있고, 문자열 "home"을 return하므로 templates 폴더에 있는 home.html 렌더링됨, 컨테이너에서 이미 대응되는 bean을 찾았으므로 static 폴더에 있는 index.html는 렌더링 X이 과정이 맞을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[3_Q맞왜틀] 어디서 틀렸는지 잘 모르겠어요
http://boj.kr/2c94d34c79944ea3a6c763ef440ac650 예제는 맞는 것 같은데 (visited배열 출력해서 확인함) 제출 하면 틀렸다고 나오네요.. 왜그런지 잘 모르겠어요 ㅜㅜ저는 다음과 같이 코드를 짰습니다.입력받고gohome 함수에서cnt가 k와 같으면 ret++하고 returnny와 nx정의해서 범위 벗어나는지 확인, 방문했는지 확인, 입력받은 배열 값이 T인지 확인, cnt==k인데도 도착지가 집이 아닌지 확인위 조건들을 통과하면 방문하고 재귀함수 호출 , 방문기록 삭제도움 많이 받고있습니다 선생님 감사합니다!
-
미해결실전! 스프링 데이터 JPA
long 반환타입
MemberJpaRepository의 count 함수에서 Long이 아닌 long 으로 반환타입을 작성 하는 이유가 뭔가요?Long으로 해도 상관 없는걸까요?
-
미해결
keycloak, oauth2을 이용한 spring boot 인증 처리
안녕하세요.프론트와 백엔드간에 인증처리 구성을 테스트 하던 중 궁금한게 있어 질문드립니다.프론트와 백엔드에 kecloak 적용 방법이 궁금합니다.현재 프론트, 백엔드 모두 spring boot를 사용했습니다.그 다음 spring-boot-starter-oauth2-resource-server, spring-boot-starter-oauth2-client를 적용하려고 하는데요.keycloak 로그인을 해서 인증 세션을 생성(프론트) : client 적용들어온 요청이 인증된 요청인지 확인(백엔드) : resource-server 적용이렇게 적용하면 되는걸까요? REST API 호출 시 인증 처리 방식이 궁금합니다.1) 같은 realms 안의 client들 끼리는 keycloak SSO 처리로 인증된다.?2) keycloak에서 토큰정보 조회 url을 호출해서 받은 access-token을 헤더에 넣어서 받는 쪽에서 token을 파싱해서 인증 체크를 한다.2번으로 한다고 하면 access-token을 얻어오는 방식이 url을 호출해서 받아오는 게 맞는 방법인지가 궁금합니다.프론트 접속 -> keycloak 로그인 페이지 호출 -> keycloak 로그인 -> 백엔드 호출 요청 -> keycloak에 access-token 요청 -> access-token을 헤더에 넣고 백엔드 호출-> 백엔드에서 헤더에 있는 access-token을 확인 -> keycloak에 token 검증 요청이 흐름대로 동작한다고 생각하면 될까요? 아니면 로그인 되어 있는 상태라면 access-token을 꺼낼 수 있는 방법이 있는걸까요?
-
미해결처음 만난 리액트(React)
npm start
npm start를 하면 여기서 멈추고 원하는 화면이 안나오는데 어떻게 해야하나요?
-
미해결홍정모의 따라하며 배우는 C언어
C언어로 메모장 프로젝트를 시작한다면,
지금 강의 커리큘럼을 완주했을때, 메모장 프로젝트가 가능할까요?제가 생각한 메모장 기능은파일 열기, 닫기,최대화 최소화, 크기변화 텍스트입력, 삭제. 복사,붙여넣기저장,수정-이렇게 일때, 해당 과정만으로 가능할까요?아니면 winAPI나 GUI에 대한 추가 학습이 필요할까요?순수C언어만으로 프로젝트가 가능한지, 다른 별도 학습이 필요한지 궁금합니다.