분류 전체보기
-
Sequelize Database Error (Unknown column 'stagename' in 'field list')error handling/debugging 2020. 7. 13. 03:08
처음에 짠 스키마와 클라이언트에서 서버에, 그리고 서버에서 DB에 보내줘야하는 내용이 코드를 짜다보니 계속 엇갈려버렸다. 백엔드 작성 중의 실수! 스키마를 구성할 때는 고유한 userid를 받아와서 DB에서 비교할 수 있도록 구성했는데 클라이언트에서 보내줄 수 있는 내용은 username밖에 없어서 서버에서 username으로 DB에서 찾으려 하다보니 (당연히) 진행이 되지않았다. 그래서 결국 DB table 의 column 값을 userid에서 username으로 바꿔주었더니 다음과 같은 오류가 발생했다. UnhandledPromiseRejectionWarning: SequelizeDatabaseError: Unknown column 'username' in 'field list' 오류의 원인은 mod..
-
이 문제들을 다 풀면 session 이해 완료!concept/server 2020. 7. 12. 03:23
출처: 코드스테이츠 다음 중 세션에 대한 설명으로 옳은 것을 모두 고르면? A 서버와 클라이언트의 연결이 활성화된 상태 자체를 의미한다. B 클라이언트의 브라우저에 세션 객체가 저장되어 관리된다. C 클라이언트에 개별적으로 발급되는 세션 id는 헤더의 'set-session' 속성에 담겨야 한다. D 세션이 활성화가 되면, 서버는 클라이언트를 구분하기 위해 각 클라이언트에 세션 id를 발급한다. E 쿠키와 완전히 별개의 개념으로, 쿠키의 단점을 보완하기 위해 등장한 기술이다. 더보기 답 A 서버와 클라이언트의 연결이 활성화된 상태 자체를 의미한다. D 세션이 활성화가 되면, 서버는 클라이언트를 구분하기 위해 각 클라이언트에 세션 id를 발급한다. 오답풀이) B 세션 정보가 클라이언트, 서버 둘 다 저장이..
-
ComponentDidMount 와 render의 차이?concept/React, Redux, RN 2020. 7. 12. 02:07
출처 : zerocho / velopert 각각의 뜻을 먼저 살펴보자면 render 컴포넌트 렌더링을 담당합니다. componentDidMount 컴포넌트가 만들어지고 첫 렌더링을 다 마친 후 실행되는 메소드입니다. 이 안에서 다른 JavaScript 프레임워크를 연동하거나, setTimeout, setInterval 및 AJAX 처리 등을 넣습니다. render은 컴포넌트를 DOM에 부착하는 역할을 한다. 그리고 mount가 완료되고 나면 componentDidMount가 호출된다. 즉, state, context, defaultProps 저장 componentWillMount render componentDidMount 이 순서대로 실행이 된다. 그림으로 보면 이렇다.
-
팀프로젝트에 있어서 catch-up의 중요성studying coding 2020. 7. 7. 03:05
내가 맡은 작업이 잘 풀리지 않는 경우에는 다른 것 신경쓸 새도 없이 내 작업에만 몰두하게 된다. 그렇게 되면 팀원들과 다같이 미팅을 할 때 진행 상황 캐치업이 굉장히 힘들어지는 경우가 발생한다. 한번 흐름을 놓치면 프로젝트에 대한 이해도가 떨어질 수 밖에 없기 때문에 내 작업이 잘 풀리지 않는다고 해도 현재 팀 프로젝트가 어떻게 진행되고 있는지 과정을 놓치면 안된다. 속도가 달라도 최신 업데이트 상황을 pull 받고 계속 체크하면서 캐치업 해 나가기!!!!
-
시간을 효율적으로 쓰는 코딩 방법 (feat. 입산 금지)studying coding 2020. 7. 6. 00:48
2주 프로젝트를 진행하며 내 가장 큰 문제는 중구난방이라는 것을 깨달았다. 마이페이지를 구현하는 중, 마이페이지에 들어 가야 하는 기능들을 여러가지 늘어 놓고 이것 저것 조금씩 건드리다가 머리가 터질 것 같아 아무것도 못 건드리겠는 상황에 봉착했다. 그렇게 멘붕이 온 도중에 현재 나의 상황을 팀 채팅방에 토로했더니 페어가 도와주겠다고 연락이 왔다. 고마운 페어분을 통해서 문제를 해결하는 방법에 대해서 제대로 배운 것 같아 기록해보려고 한다. 문제가 해결이 안될 때 일단 넘어가고 다른 문제부터 해결하는 것도 중요하지만 그게 반복될 경우 중구난방이 되어 버린다. 일단 해결해야할 하나의 과제를 정하고 그 과제를 쪼개고 나눈다. 차근차근 하나의 코드를 고치고 이 고친 코드를 어디서 확인해볼 수 있을지 생각해본다..
-
코딩을 공부하며 / 부트캠프를 하면서 드는 갖가지 생각들 정리studying coding 2020. 7. 5. 01:06
코딩을 배우기 시작한지 벌써 5개월이 지났다. 배우면서 오만가지 얕은 철학들과 깨달음들을 얻었는데, 오빠랑 떠들 때만 신나게 그것들에 대해서 이야기 하고 따로 기록해두지 않았었다. 그런데 오늘 동기분의 TIL 블로그를 보면서 나도 덩달아 힘이 되고 감명 깊은 부분들이 많아서 기억나는 것들만 따로 기록해보려고 한다. 코딩을 배우며 좌절하고 있는 어떤 누군가에게는 이 글이 공감이 되고 힘이 될 수 있기를 바라며. 2주 프로젝트를 하면서 드는 생각 일단 나에게 긴장이 너무 많이 떨어져 있었다는 것을 여실히 깨달은 2주 프로젝트였다. 부트캠프에서 가장 중요한 것은 멘탈관리라는 말이 나에게는 독이 된 것 같다. 멘탈관리에만 너무 신경을 쓴 나머지(?) 실력 향상보다 자기합리화가 우선이 되어버렸다. 멘탈관리가 중요..
-
office hour에서 나온 질문 정리 (testcase / third-party API)error handling/Simple tips 2020. 7. 3. 15:19
testcase 만들 때도 testcase DB를 따로 만들어주는 것이 편함 (TMI: 하지만 이렇게하면 cost가 많이 든다.) react(single page application)를 쓴다는 것은 클라이언트를 헤비하게 가져가서 데이터를 클라이언트에서 처리하려고 쓰는 거긴 한데 third-party API를 쓰게 된다면 secret키를 써야하기 때문에 클라이언트에서 다루게 되면 브라우저에 보일 수 밖에 없다. 그래서 third-party를 래핑하려면 서버에서 작업해서 API키가 안 보이게 하는 경우가 많다. (구글 소셜 로그인은 클라이언트에서!)
-
서버 포트 중복 오류 / Error: listen EADDRINUSE: address already in use ::: 5000error handling/debugging 2020. 7. 3. 01:26
서버를 실행 중인 터미널을 잘못 종료해서 포트가 계속 실행 중일 경우 강제로 종료하는 방법을 소개하려고 한다. 에러 메시지는 다음과 같이 뜰 것이다. Error: listen EADDRINUSE: address already in use :::5000 at Server.setupListenHandle [as _listen2] (net.js:1313:16) at listenInCluster (net.js:1361:12) at Server.listen (net.js:1449:7) 5000 포트를 이미 사용중이라고 뜨고 있다. 터미널에 다시 아래와 같이 입력하면 lsof -i tcp:5000 (