묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
게시글 업로드 문제(401) But.. 로그인 되었음(cookie 보유 확인)
알려주신대로 npm start 통해 로그인 문제는 해결이 되었습니다. 로그인은 되어 있습니다 그런데 게시글 업로드 시 401 에러(로그인이 필요하다)가 생깁니다. <확인결과> network - post - Cookie 탭에 connenct.sid(Cookie) 보유 확인 Aplication/Cookies에 connect.sid 확인 ---------------------------------------------- 무엇이 문제인지 파악이 되지 않습니다 . 혹시나 문제는 없었지만 getServerSideProps 문제인건가요? /front/pages/index.js export const getServerSideProps = wrapper.getServerSideProps((store) => async ({ req }) => { const cookie = req ? req.headers.cookie : ''; // req가 있다면 cookie에 요청에 담겨진 cookie를 할당한다. axios.defaults.headers.Cookie = ''; // 요청이 들어올 때마다 초기화 시켜주는 것이다. 여기는 클라이언트 서버에서 실행되므로 이전 요청이 남아있을 수 있기 때문이다 if (req && cookie) { axios.defaults.headers.Cookie = cookie; // 서버일때랑 cookie를 써서 요청을 보낼 때만 headers에 cookie를 넣어준다 } store.dispatch({ type: LOAD_MY_INFO_REQUEST, // user }); store.dispatch({ type: LOAD_POSTS_REQUEST, // post }); store.dispatch(END); await store.sagaTask.toPromise(); // store/configureStore.js > store.sagaTask }); // 이 부분이 Home 보다 먼저 실행됨
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
깃헙 권한 요청드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 인프런 아이디 : zaar625인프런 이메일 : zaar625@naver.com깃헙 아이디 : zaar625깃헙 Username : zaar625 감사합니다.~재미있게 공부하며 듣고있어요.
-
미해결[백문이불여일타] 데이터 분석을 위한 중급 SQL 문제풀이
1. Leetcode 595 문제
안녕하세요, 문제 풀이 첫번째 문제에서 해설과 똑같이 풀었는데 Accepted 나오고 제출 누르면 Wrong answer라고 나옵니다. 혹시 제 쿼리문에 잘못된 부분이 있을까요?
-
미해결비개발자를 위한 RPA 강의 (UiPath 입문편)
데이터스크래핑
안녕하세요. 지금 스튜디오 구성이 달라져서 데이터스크래핑이 디자인 탭에 없고 '테이블추출'이라는 것만 보입니다. 테이블추출로 강수정보 스크래핑을 어떻게 하면 될까요? -데이터추가를 누르고 네이버 날씨 강수탭의 '01시'를 선택하면 오늘부터 모레까지 전부 스크래핑이 되어버리는데 딱 내일 것만으로 제한하려면 어떻게 해야 하나요? (현재 네이버 날씨페이지도 동영상과 달라져서 강수정보가 이전,다음페이지까지 있습니다) -상호연결된 데이터 추출'이 안 보이는데 강수확률을 연결하려면 어떻게 해야하나요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@Controller 통합 과정에서 궁금한 것이 있습니다.
안녕하세요! 항상 좋은 답변 주셔서 감사합니다. @Controller 통합 과정에서 궁금한 것이 있어서 굴을 적었습니다! 아래 질문이 맞는지 하나하나 봐주시면 너무 감사하겠습니다! 1. @Controller를 붙인 클래스가 있다면, @Controller안에는 @Component가 있어서, @Component Scan을 통해서 @Controller 클래스가 자동으로 스프링 빈 컨테이너에 스프링 빈으로 등록되는게 맞을까요? 2. Controller 통합을 위해서 컨트롤러 1개에 여러개의 메서드에 각각 @RequestMapping을 통해서 여러 핸들러를 등록하는 것으로 알려주셨습니다. 이것이 정확히 의미하는 바가 어떤 것일지 알려주실 수 있을까요? 제가 추정하는 바는 다음과 같습니다. @Controller가 붙는 것은 실제로 1개 이기 때문에 그 컨트롤러 내에 몇 개의 RequestMapping이 붙어있건 상관없이 스프링 빈은 1개만 등록된다. 그리고 각 ReqeustMapping은 스프링 빈의 특정 메서드와 연결된다. HandlerMapping 보관소에 있는 것은 @Controller가 붙은 빈이 아닌, Static Method를 참조하는 방식과 유사하게 작성된다. 이렇게 이해하는 것이 맞을까요? 항상 좋은 답변 주셔서 감사합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
연산자 오버로딩 ++ 질문입니다.
Iterator& operator++() { _ptr++; return *this; } Iterator operator++(int) { Iterator temp = *this; _ptr++; return temp; } 넘겨주는 부분이 이해가 안돼서 질문드립니다. 전위형의 경우 return *this를 반환하고 후위형의경우에 temp에다가 *this를 넣은후 temp를 반환하는데 결국 둘의 반환타입이 같은거 아닌가요??.. 근데 왜 전위형의경우에는 반환값이 Iterator의 참조값이고 후위형의 경우는 Iterator인가요?..
-
미해결코어 자바스크립트
메모리 셀 질문
안녕하세요 재남님. 강의 정말 잘 보고 있습니다. :) 메모리 셀 하나에 변수명과 실제 값이 저장되어 있는 메모리주소를 이름-값 형식으로 저장이 되는 것 같은데 하나의 메모리 셀 안에서 어떤 형태로 저장이 되길래 두 가지 데이터가 구분이 되는 것이며, 하나의 메모리 셀 안에서 2가지 정보가 들어갈 수 있는 것인가요? 심지어 참조형의 경우에는 확보된 메모리 주소의 범위가 통으로 들어가기도 하구요. 하나의 셀에는 하나의 데이터만 들어갈 수 있고, 그 형태는 기본형 데이터여야 하는거 아닌가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
설치하고 run ServletAppliaction을 진행하였는데 tomcat server가 실행되는 문구가 출력되지 않습니다 ㅜㅜ;;
[질문 내용]intellij를 실행하면 console창에 이렇게 출력됩니다... 다시 설치해도 똑같이 나옵니다.. 문제가 무엇일까요.... (FIle- > setting 에서 gradle은 intellij IDEA로 바꿨습니다.) [추가 내용] FIle - setting 에서 검색란에 gradle을 입력하고 build and run using 부분을 Gradle로 바꾸면 서버가 실행되는 모습이 나옵니다. 대신... 서버를 중지하면 에러문구가 출력됩니다... 다시 build and run using 부분을 intellij IDEA로 바꾸면 에러는 나오지 않지만 위와 같은 문제에 직면합니다.... ㅜㅜ; tomcat 서버가 실행은 되지만 계속해서 로딩되는 듯한 모습을 보여줍니다.. 서버 정지 버튼을 누른 상태
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
스크립트3.18.1이 없는데 어떻게 깔죠?
4강에서 atom깔고 settings눌러서 스크립트를 깔려고 하는데 스크립트 3.18.1 이 안보여요 다른 스크립트는 많은데....다른걸로 다운받아야 하나요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
4강질문
atom깔고 settings누르고 intall 눌러서 script라고 쳤는데 다운받으라고 한게 안보이네요. 어떻게 찾아야 될지도 모르겠고...
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
Spring boot 1.x.x 버전 프로젝트 생성하시는법 아시는가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/)[질문 내용]안녕하세요 김영한님 혹시 Spring boot 1.x.x 버전으로 프로젝트 생성하시는 법 아시나요? jdk 1.7 사용하는 프로젝트를 받았는데 초반부터 쉽지않네요...
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
multer s3 질문
multer 말고 formidable도 있는데 multer를 쓰는 특별한 이유가 multer를 이용해 s3 하는게 편해서 그런건가요? 그리고 formidable을 이용해서도 s3 하는게 가능한가요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 목록을 더 확장해서 해보는데 잘 안되네요.
https://github.com/yacamoz/springboard -현재 작성중인 코드- 일단 배운 범위내에서 게시판을 만들어 볼겸 해서 조금 확장하고 있는데, 테스트코드를 돌려보는데 원하는대로 작동을 안합니다. 자동으로 증가하는 번호는 memnum, 이름, 아이디, 비밀번호, 이메일을 추가한 새로운 DB를 mysql로 만들고 이를 적용하는데 테스트코드에서는 memberid에 분명히 'spring12'를 넣었지만 정작 saveId에는 memnum이 입력이 되고 memnum은 아무것도 입력이 안되는 현상이 계속 관측됩니다. 그래서 계속 테스트코드는 오류를 뱉어내고 있습니다. 테스트코드는 작동을 안하지만 DB에 모든 내용은 잘 입력되었습니다. 관련된 Service 탭이나 domain의 member도 확인해보았지만 도저히 해결이 안됩니다. 어떻게 해야하나요?
-
미해결윤재성의 스프링 프레임워크 개발자를 위한 실습을 통한 입문 과정
12:25 질문 드립니다.
ctx.close() 메서드를 호출하면 IOC 컨테이너가 가지고 있는 모든 객체가 소멸된다고 하셨는데요. ctx.close() 이후에 t1의 값을 찍어보면 주소는 여전히 살아있습니다. 가비지컬렉션이 추가로 필요한건가요? TestBean1 의 생성자 TestBean1 의 init 메서드 t1 : kr.co.softcampus.beans.TestBean1@c0c2f8d TestBean1 의 destroy 메서드 t1 : kr.co.softcampus.beans.TestBean1@c0c2f8d
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
COALESCE
pdf에는 coalesce: 하나씩 조회해서 null이 아니면 반환 예제 코드에는 사용자 이름이 없으면 '이름없는 회원'을 반환이라고 되어있는데 즉 하나씩 조회해서 null이면 (username이 null이면)이름없는 회원을 반환한다는 의미 아닌가요? pdf의 설명이랑 다른거같아서 질문드립니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
동영상 재생이 안되는 구간이 있어요
값타입 section 실전예제6 값타입 매핑 동영상만 재생이 안되네요 확인 부탁 드립니다
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
getServerSideProps 문제 질문있습니다.
cookie가 있는걸로 봐서는 프론트에서 인식을 못하고 있는것 같다고 하셔서 살펴보는데 찾지를 못하겠습니다.. 일단 pages/index,js의 getServerSideProps 는 문제가 없어 보입니다. ```javascript export const getServerSideProps = wrapper.getServerSideProps((store) => async ({ req }) => { const cookie = req ? req.headers.cookie : ''; // req가 있다면 cookie에 요청에 담겨진 cookie를 할당한다. axios.defaults.headers.Cookie = ''; // 요청이 들어올 때마다 초기화 시켜주는 것이다. 여기는 클라이언트 서버에서 실행되므로 이전 요청이 남아있을 수 있기 때문이다 if (req && cookie) { axios.defaults.headers.Cookie = cookie; // 서버일때랑 cookie를 써서 요청을 보낼 때만 headers에 cookie를 넣어준다 } store.dispatch({ type: LOAD_MY_INFO_REQUEST, // user }); store.dispatch({ type: LOAD_POSTS_REQUEST, // post }); store.dispatch(END); await store.sagaTask.toPromise(); // store/configureStore.js > store.sagaTask }); // 이 부분이 Home 보다 먼저 실행됨 ``` 그리고 reducer 또한 문제가 없어 보입니다. case LOAD_MY_INFO_REQUEST: draft.loadMyInfoLoading = true; draft.loadMyInfoDone = false; draft.loadMyInfoError = null; break; case LOAD_MY_INFO_SUCCESS: draft.loadMyInfoLoading = false; draft.me = action.data; draft.loadMyInfoDone = true; break; case LOAD_MY_INFO_FAILURE: draft.loadMyInfoLoading = false; draft.loadMyInfoError = action.error; break; 이어서 saga user 입니다. function loadMyInfoAPI() { return axios.get('/user'); // GET(Browser) } function* loadMyInfo() { try { const result = yield call(loadMyInfoAPI); console.log(result); yield put({ type: LOAD_MY_INFO_SUCCESS, data: result.data, }); } catch (err) { console.error(err); yield put({ type: LOAD_MY_INFO_FAILURE, error: err.response.data, }); } } routes/user 입니다. router.get('/:userId', async (req, res, next) => { try { const fullUserWithoutPassword = await User.findOne({ where: { id: req.params.userId }, attributes: { exclude: ['password'], // 원하는 정보만 가져오거나 가져오지 않겠다 / 현재: pw 빼고 다 가져오겠다 }, include: [ { model: Post, attributes: ['id'], }, { model: User, as: 'Followers', attributes: ['id'], }, { model: User, as: 'Followings', attributes: ['id'], }, ], // 가져올 정보중 뺄 것들 }); if (fullUserWithoutPassword) { const data = fullUserWithoutPassword.toJSON(); data.Posts = data.Posts.length; // 개인정보 침해 예방 data.Followers = data.Followers.length; data.Followings = data.Followings.length; res.status(200).json(data); } else { res.status(404).send('존재하지 않는 사용자입니다.'); } } catch (err) { console.error(err); next(err); } }); 추가로 middleware 입니다. exports.isLoggedIn = (req, res, next) => { if (req.isAuthenticated()) { next(); // 비어있으면 다음 미들웨어로 간다 } else { res.status(401).send('로그인이 필요합니다.'); } }; exports.isNotLoggedIn = (req, res, next) => { if (!req.isAuthenticated()) { next(); // 비어있으면 다음 미들웨어로 간다 } else { res.status(401).send('로그인하지 않은 사용자만 접근이 가능합니다.'); } }; 살펴본 결과 로직은 문제가 없어보이는데 혹시 front에서 getServerSideProps 문법이 강의와 다른데 라이브러리 사이트를 보고 적용했던겁니다. 제가 너무 헤매고 있어서 보시고 조언 주신다면 감사하겠습니다... network 401
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
django template내 src 링크내에서 & 문자
django template html 안에서 src 주소중에 &가 들어가는 부분 전부 빨간색이 되더라고요 시도해본 방법으로 이스케이프를 앞에 써봤습니다
-
미해결중급자를 위한 1 minute, 스낵 파이썬
heapq는 효과적이다 라고 할정도로 빠르진 않다는 말씀이신가요??
안녕하세요. 강의 잘 듣고 있습니다. heapq는 얼마나 빠른가 챕터를 보고 있다가 열린 결말로 나온것 같아서.. 정리를 하자면 제목과 같이 heapq는 효과적이다 라고 할정도로 빠르진 않다는 것이 이번 챕터의전달 목적인가 해서 질문드립니다!
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
프래그먼트에서 뒤로가기
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 강의 잘 듣고 있습니다. 프래그먼트를 배우다가 뒤로가기 이벤트 때문에 질문드립니다. Fragment에서 뒤로가기를 누르면 종료가 되서요 종료가 안되고 뒤로 가려고 구글링을 해서 addToBackStack(null)란 명령어를 찾았는데 혹시 첫번째 페이지에서만 뒤로가기 했을때 종료하는 방법이 있을까요? 예를 들어서 제가 3개 프래그먼트를 만들었고 1->2->3->1로 이동한다고 가정했을때 1->2에서는 뒤로가기 가능 2->3에서도 가능 3->1로 이동했을때 첫번째 페이지에서 뒤로가기 눌렀을시 종료되는 기능이요. 이것저것 시도해보는데 잘 되지 않아서요. 혹시 가능할까요?