묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨두고두고 써먹는 유니티 VR
게임 프로젝트 파일 실행방법 문의드립니다!
chapter 4에 주신 게임 프로젝트 파일을 어떻게 unity web editor에 붙여넣거나 실행해야 완성된 게임프로젝트를 실행시킬 수 있는건가요? 제 프로젝트 파일의 assets packages projects setting user setting에 각각 붙여넣어야 하나요? 어떤 파일들을 어떻게 어디에 붙여넣어야 바로 시뮬레이터로 완성된 게임을 실행하고 볼 수 있는지 알려주시면 감사하겠습니다.
-
미해결스프링 시큐리티 OAuth2
spring boot 2.1.4 버전 호환
안녕하세요~프로젝트 구성에 spring boot 2.7.x 버전이라고 나와있는데spring boot 2.1.4 버전에서는 spring-security-oauth2-authorization-server 를 사용할 수 없나요??있다면 어떤 버전을 사용해야 하나요??(spring-security-version 버전은 4.0.3 입니다. )
-
미해결Next + React Query로 SNS 서비스 만들기
로그인 문제
로그인 테스트 해보려는데 try, catch 부분 둘 다 실행되네요?. 리다이렉트가 안되는거 같아요새로 고침하면 로그인 상태는 됩니다. 리다이렉트 안되는 이유가 무엇일까요?'use client'; import style from '@/app/(beforeLogin)/_component/login.module.css'; import { ChangeEventHandler, FormEventHandler, useState } from 'react'; import { useRouter } from 'next/navigation'; import { signIn } from 'next-auth/react'; // 클라이언트에서는 next-auth/react에서 임포트 export default function Page() { const [id, setId] = useState(''); const [password, setPassword] = useState(''); const [message, setMessage] = useState(''); const router = useRouter(); const onSubmit: FormEventHandler<HTMLFormElement> = async (e) => { e.preventDefault(); setMessage(''); try { await signIn('credentials', { username: id, password, redirect: false, }); router.replace('/home'); } catch (error) { console.error(error); setMessage('아이디와 비밀번호가 일치하지 않습니다.'); } }; const onClickClose = () => { router.back(); }; const onChangeId: ChangeEventHandler<HTMLInputElement> = (e) => { setId(e.target.value); }; const onChangePassword: ChangeEventHandler<HTMLInputElement> = (e) => { setPassword(e.target.value); }; return ( <div className={style.modalBackground}> <div className={style.modal}> <div className={style.modalHeader}> <button className={style.closeButton} onClick={onClickClose}> <svg width={24} viewBox='0 0 24 24' aria-hidden='true' className='r-18jsvk2 r-4qtqp9 r-yyyyoo r-z80fyv r-dnmrzs r-bnwqim r-1plcrui r-lrvibr r-19wmn03' > <g> <path d='M10.59 12L4.54 5.96l1.42-1.42L12 10.59l6.04-6.05 1.42 1.42L13.41 12l6.05 6.04-1.42 1.42L12 13.41l-6.04 6.05-1.42-1.42L10.59 12z'></path> </g> </svg> </button> <div>로그인하세요.</div> </div> <form onSubmit={onSubmit}> <div className={style.modalBody}> <div className={style.inputDiv}> <label className={style.inputLabel} htmlFor='id'> 아이디 </label> <input id='id' className={style.input} value={id} onChange={onChangeId} type='text' placeholder='' /> </div> <div className={style.inputDiv}> <label className={style.inputLabel} htmlFor='password'> 비밀번호 </label> <input id='password' className={style.input} value={password} onChange={onChangePassword} type='password' placeholder='' /> </div> </div> <div className={style.message}>{message}</div> <div className={style.modalFooter}> <button className={style.actionButton} disabled={!id && !password}> 로그인하기 </button> </div> </form> </div> </div> ); } 핸들러 부분도 수정했습니다.const User = [ { id: 'elonmusk', nickname: 'Elon Musk', image: '/yRsRRjGO.jpg' }, { id: 'zerohch0', nickname: '제로초', image: '/5Udwvqim.jpg' }, { id: 'dongwook98', nickname: '신동마', password: '1234', image: '/me.jpeg' }, { id: 'leoturtle', nickname: '레오', image: faker.image.avatar() }, ]; const Posts = []; export const handlers = [ http.post('/api/login', () => { console.log('로그인'); return HttpResponse.json(User[2], { headers: { 'Set-Cookie': 'connect.sid=msw-cookie;HttpOnly;Path=/', }, }); }), 추가로 콘솔 에러 메시지 입니다.이걸 보고 AUTH_URL 도 확인해보았는데 다 잘 적어줬습니다. 또 로그인 하기 전 메인 페이지에서 로그인 버튼 눌러서 로그인 모달이 뜨는 순간콘솔 탭에 이러한 에러 메시지가 생깁니다.위 에러 메시지는 검색해서 useEffect(() => { router.replace('/i/flow/login'); }, []);useEffect로 감싸주어서 해결하였습니다.
-
해결됨지금 당장 데브옵스 AWS
운영 DB 연결 테스트 (npm run start) 에러
안녕하세요 아래와 같이 질문드립니다.섹션 2. [Part1] RDS - 운영 DB 연결 테스트 에서윈도우 cmd와 MySQL Workbench에서는 mysql 로그인이 잘 되는데아래와 같이 npm run start 하면 에러가 발생합니다..env 파일 설정은 아래와 같이 되어 있습니다.위 에러를 어떻게 풀어나가야 될지 감이 오지 않아 답변 부탁드리겠습니다 ㅠ
-
해결됨NodeFull Stack 개발 가이드
실습(14) 질문있습니다!
해당 명령어를 실행하였는데docker compose -f .\scripts_docker_dev/docker-compose.dev.yml --build 아래와 같이 오류가 납니다.Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:5173 -> 0.0.0.0:0: listen tcp 0.0.0.0:5173: bind: An attempt was made to access a socket in a way forbidden by its access permissions. 5173 포트를 사용하고 있지는 않은데 뭐가 문제일까요?
-
해결됨비전공자를 위한 진짜 입문 올인원 개발 부트캠프
expo 시작 오류
expo를 global로 설치하고 init까지 한 후npm start를 했을 때 일단 아래처럼 에러가 발생합니다.Unable to find expo in this project - have you run yarn / npm install yet?-> 이건 npm install을 해서 해결 했습니다. 그런데 그 후에도 또 아래와 같은 에러가 발생합니다.PS D:\Programming\study\Inflearn\FullStack\project\grab-market-mobile> npm start> grab-market-mobile@1.0.0 start> expo startStarting project at D:\Programming\study\Inflearn\FullStack\project\grab-market-mobileStarting Metro BundlerFetchError: request to https://api.expo.dev/v2/sdks/49.0.0/native-modules failed, reason: self signed certificate in certificate chainFetchError: request to https://api.expo.dev/v2/sdks/49.0.0/native-modules failed, reason: self signed certificate in certificate chain at ClientRequest.<anonymous> (D:\Programming\study\Inflearn\FullStack\project\grab-market-mobile\node_modules\node-fetch\lib\index.js:1501:11) at ClientRequest.emit (node:events:513:28) at TLSSocket.socketErrorListener (node:_http_client:494:9) at TLSSocket.emit (node:events:513:28) at emitErrorNT (node:internal/streams/destroy:157:8) at emitErrorCloseNT (node:internal/streams/destroy:122:3) at processTicksAndRejections (node:internal/process/task_queues:83:21)이건 어떻게 해결해야 하나요?
-
미해결
노션에 코드를 정리해놓으셨다고 하는데..
노션이 어디에 있다는건가요? 코드를 보려는데 제 눈에 안보이네요.
-
해결됨실리콘밸리 엔지니어와 함께하는 Apache Airflow
강의 할인 프로모션 질문입니다..
선생님 완강 이후 커뮤니티 이벤트 참여 신청했는데요이벤트 끝난건가요? ㅠ https://www.inflearn.com/course/%EC%8B%A4%EB%A6%AC%EC%BD%98%EB%B0%B8%EB%A6%AC-%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EC%99%80-%ED%95%A8%EA%BB%98%ED%95%98%EB%8A%94-apache-airflow/news
-
미해결설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)
DUT 시퀀셜 로직에서 output을 뽑기 위한 reg 설정 스타일 문의
안녕하세요. 강의 잘 듣고 있습니다.작성하신 예제 코드를 보면 시퀀셜로직의 always 문에서 아웃풋을 뽑기 위해 별도의 reg 타입 변수를 선언하고 always 문 바깥에서 assign 으로 아웃풋에 reg 값을 넣고 있는데,output 선언할때 output reg a_out; 이런식으로 코딩하고 always 문에서 바로 값을 입력하면 문제가 있는 걸까요? 예전에 듣던 강의에서는 바로 이런식으로 입력을 해서 질문드립니다. 합성할 때나 나중에 FPGA에 올릴 때 문제가 될까 해서요. 감사합니다! =================현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
제이쿼리 검색창 모달 with 플렉스(Flexbox) 내용 중 궁금한 점
입력란과 버튼의 크기를 배분하기 위해 flex를 사용할 때, 부모 요소는 반드시 display: flex를 사용해야 하는 것인가요? flex와 display:flex가 상관관계가 있는 것인지 궁금합니다.
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
코드샌드박스 바닐라 자바스크립트 템플릿 없음
안녕하세요. 4강 듣고있는데 코드샌드박스에서create a sandbox 해서 들어가도템플릿 목록에 vanila codesandbox가 없네요. react, html+css, react typescript, vanila typescript 이렇게 4가지만 보입니다. ㅠㅠ
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
react 개발하는데 nodejs가 사용되는 이유가 궁금해요!
react 할때마다 관성적으로 nodejs를 쓰다보니 갑자기 의문이 생겼어요. 왜 nodejs를 써서 개발해야하는지.react 개발 시 필요한 도구들을 설치하기 위해 npm을 사용하는 것이 좋다는 것은 인지하고 있습니다근데 왜 nodejs까지 쓰는지는 잘 모르겠습니다!
-
미해결취미로 해킹#2(해커의 컴퓨팅)
오래된 운영체제를 사용하시는 이유가 있을 까요?
강의에 사용하는 컴퓨터를 보아하니 98를 사용하시는 것 같은 데. 혹시 괜찮으시다면 오래된 OS를 사용하시는 이유를 알려주실 수 있나요?
-
미해결프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
QnA_markdown_01-1.Naming Convention 특수 기호 관련
강의 중 " 변수 네이밍 규칙 ( Naming convention ) 에서쥬피터 노트북에 힌트 부분에서는 다음과 같이 나와 있습니다." 특수문자 ( +, - , *, /, $, @, &, %) 불가"여기서, 두 번째에 "_" 가 아니라, "-" 가 오타인 것 같습니다.(언더스코어가 아닌 마이너스 기호)확인 부탁드립니다.
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
활용 앱 64강에서 lazt라는 키워드를 삭제해도되나요?
안녕하세요 Member구조체에서 memberImage를 Lazy 키워드로 작성했는데요 이걸 삭제하고 그냥 하면 왜 안되나요?
-
해결됨독하게 시작하는 C 프로그래밍
해답파일 위치를 모르겠습니다
달팽이배열 도저히 못풀겠어서 해답을 보고싶은데 어디있는지 찾아도 못찾겠어요ㅜㅜ
-
해결됨김영한의 실전 자바 - 기본편
상속 관계와 캡슐화 질문
안녕하세요 영한님 강의 잘 보고 있습니다.상속 관계와 캡슐화에 대해 궁금증이 있어 질문 남깁니다. 문제를 풀 때 부모와 자식은 각각 별도로 생성되지만, 하나의 묶음으로 생각되어 자식 클래스에서 부모 클래스의 필드에 직접 접근 가능하여야 한다 생각했습니다그리하여 부모 클래스의 필드를 protected로 생성하여 풀었는데, 영한님 문제 풀이를 보니 private 으로 감추시는걸 보고 의문점이 생겼습니다private으로 감춘다면 기존 부모 클래스 기능을 오버라이딩 하여 부모 필드에 접근이 필요 할 때는 getter/setter 같은 메소드를 만들어서 접근 해야 하는 걸까요?아래는 Car Class의 move 메소드를 GasCar Class가 재정의 하는 코드를 간략하게 작성해보았습니다public class Car { private int speed; public void move(){ speed++; System.out.println("speed : " + speed); } protected int getSpeed() { return speed; } protected void setSpeed(int speed) { this.speed = speed; } } public class GasCar extends Car{ @Override public void move() { int speed = getSpeed() + 2; setSpeed(speed); System.out.println("speed : " + speed); } } 따라서 상속 관계라도 일반 객체를 사용하는 입장과 동일하게 캡슐화를 해야 하고, 확장의 여지를 두고 부모 클래스의 필드에 접근하는 메소드를 만들어야 하는것인지 궁금합니다!
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
em.flush 발생 시점에 대한 부가적인 질문
오랜만에 관련된 업무 진행하다가 발생한 궁금점에 대하여 질문드리게 되었습니다. 우선 한 트랜젝션의 영속성 컨텍스트에 대하여 쓰기 지연 저장소에 쌓인 쿼리가 flush() 되는 경우는 다음 세 가지로 이해하였습니다. flush() 직접호출트랜젝션 commit()JPQL 직접 발생시, 해당 JPQL 발생 이전 다음과 같은 연관관계가 가정되어 있다고 해보겠습니다. public class Car{ @Id private Long id; } public class Wheel { @Id private Long id; @ManyToOne @JoinColumn(name = "car_id") private Car car; } Wheel 이 연관관계의 주인이며, Car 와 M:1 관계로 매핑되어 있습니다. 이 때, 다음과 같은 로직을 수행해보겠습니다. (1L 의 Wheel 이 2L 의 Car 에 매핑되어 있음) Wheel wheel = em.find(Wheel.class, 1L); wheel.setCar(null); // 1) em.createQuery("delete from Car c where c.id = :id") .setParameter("id", 2L) .exeucteUpdate(); // 2) 이와 같이 수행되었을 때, 1번 시점에서 영속성 컨텍스트에 보관중인 Wheel 의 Car 값이 변경되어 Update 쿼리가 발생하여 쓰기 지연 저장소에 저장되었을 것으로 추측합니다. 2번 시점은 위에서 말한 'flush 발생시점' 중 3번에 해당한다고 생각했습니다 (JPQL 직접 수행). 그렇다면 쓰기 지연 저장소에 쌓인 Update 쿼리가 나간 이후, 직접 수행하려는 Delete JPQL 을 발생시켜서 아무 문제 없이 수행되어야 하는거 아닌가 싶었는데, 위 로직은 FK 제약조건에 위배되어 수행되지 못합니다. 1번과 2번 사이에 강제로 em.flush() 를 진행해주면, 그제서야 update 쿼리가 발생한 뒤에 delte 쿼리가 발생하여 위 로직이 아무 에러 없이 수정되는 모습을 확인했습니다. 왜 이 상황에서는 flush 가 자동으로 발생하지 않나요? 열심히 찾아봤을 때... JPA 측에서 제공하는 3번 (JPQL 발생시 flush 됨) 에 대한 명확한 [기준] 은 제시하고 있지 않은 것으로 보이는데 맞을까요??
-
해결됨Next + React Query로 SNS 서비스 만들기
페러렐과 인터셉트 라우팅을 활용한 모달에 대한 질문입니다.
기존의 모달 방식(제 기준) 은 Context나 recoil과 같은 상태관리 모달로 Provider를 만들어서 isOpen setIsOpen과 같이 사용했는데이번에 배운 방식도 좋은 방법인 것 같지만, 폴더 구조가 엉망이 되서 가독성이 떨어지는 것 같다는 생각이 들어서 강사님 생각에는 어떤 방식이 어느 상황에서 더 좋을 것 같은지 궁금해서 질문 드려 봅니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
무언가를 띄우셨는데 무엇인지를 모르겠어요
갑자기 어떤 창을 띄우시더니 "그냥 빌드 하시면 돼요"라고 하시는데문맥상 윈도우와 다른 진행 방식인 것 같거든요해당 부분을 이해하기 위해서는 어떤 부분을 공부해야 될까요? 섹션1 프로젝트 환경설정의 3분짜리 '빌드하고 실행하기' 영상입니다 0:16 즈음이에요