복잡한 시스템을 익힐 때 아무리 서류를 여러 번 읽어보고 연구해 봐도 이해하는 데 시간이 꽤 걸릴 수도 있어요. 주니어시절 아키텍처를 이해하는 데 어려움을 많이 겪었던 것 같아요. 아키텍처를 이해하는 데 도움 되었던 방법 몇 가지 적어 봅니다.1️⃣ 서류를 읽어보며 상
소스 코드를 Git에 올리게되면 다른 사람들이 나의 secret한 정보들을 볼 수 있게 된다.그래서 비밀 정보들을 한 파일에 모아두고 .gitignore 파일에 넣어준다.(그렇게 되면 .gitignore파일에 있는 정보들은 GITHUB에 올라가지 않는다)개발 환경이 로
JWT(Json Web Token)는 말그대로 웹에서 사용되는 JSON 형식의 토큰에 대한 표준 규격인데요. 주로 사용자의 인증(authentication) 또는 인가(authorization) 정보를 서버와 클라이언트 간에 안전하게 주고 받기 위해서 사용됩니다.JWT
nodemon 모듈Node.js 개발 시 자바 스크립트 파일들을 수정 할때마다 매번 ctrl+c를 통해 node를 종료 후 다시 실행해줘야 하는 번거로움이 있었다.하지만 파일들을 모니터링하고 있다가 수정될 경우 자동으로 서버를 재실행시켜주는 모듈, 그것이 스크립트 모니
위와 같이 코드를 짜고 postman으로 요청을 보냈더니 다음과 같은 에러메시지가 떴다.MongooseError: Model.prototype.save() no longer accepts a callback그래서 검색해봤더니Mongoose 5.0.0 버전 이후부터 Mo
body-parser 요청의 본문에 있는 데이터를 해석해서 req.body 객체로 만들어주는 미들웨어. 요청의 본문을 지정한 형태로 파싱해주는 미들웨어이다. Node.js의 웹프레임워크인 Express는 요청을 처리할 때 기본적으로 body를 undefined로 처리
git initGit을 로컬 저장소에서 생성하기 위해서 Git Bash 프롬프트에서 git init을 입력하면 .git이라는 파일이 생성된다. 이 파일은 버전에 대한 정보를 담고 있는 파일이며, 평소에는 숨김 파일로 설정되어 눈에 보이지 않는다. 그리고 파일이 추가/삭
세션서버에 저장되며 고유한 SessionID 생성 후 클라이언트에 SessionID 담긴 쿠키 전송, 이후 클라이언트는 SessionID 쿠키를 요청시마다 전송하여 서버는 이를 통해 어떤 클라이언트의 요청인지 구분할 수 있음어느정도 보안 유지 : 최초 접속 때를 제외하
GETGET 메서드는 리소스의 조회를 위해 사용한다. 서버에 전달하고 싶은 데이터가 있다면 query(쿼리 파라미터, 쿼리 스트링)에 담아 보낸다. 서버는 타겟 리소스에 해당하는 representation data를 응답 데이터로 보낸다.GET 메서드로 요청할 때는 왜
preflight라고도 불리는 OPTIONS 요청은 브라우저가 서버에게 지원하는 옵션들을 미리 요청하고 허가된 요청에 한해서 전송하기 위한 보안상의 목적이 있다. preflight는 CORS와 관련이 있는데 현재 웹페이지가 웹페이지를 받은 서버와 다른 서버의 리소스를
MVC 패턴MVC란 Model-View-Controller의 약자로 애플리케이션을 세 가지 역할로 구분한 개발 방법론입니다. 사용자가 Controller를 조작하면 Controller는 Model을 통해 데이터를 가져오고 그 데이터를 바탕으로 View를 통해 시각적 표
1.서버 Upgrade 방법현재 서버를 Upgrade하는 Scale-Up더 좋은 CPU, 더 많은 RAM 등을 통해 단순히 서버의 처리 능력을 좋게 만들어서 많은 트래픽을 해당 서버가 처리할 수 있도록 하는 것.장점으로는 간단하고 따로 프로그램 작업을 해줄 필요가 없다
여기서 만드는 스키마는, 데이터베이스 서버측에서 만드는 스키마가 아니라, 우리의 웹서버가 데이터베이스에 들어있는 문서들을 객체화하여 사용 할 수 있도록 스키마를 설정해주는 것이다.데이터베이스의 실제 데이터와, 웹서버의 스키마가 일치하지 않아도, 정상적으로 작동한다. 단
Node.js는 크롬 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임이다. 한마디로 자바스크립트로 만들어진 프로그램을 구동시켜주는 환경이다. Node.js는 이벤트 기반, 논 블록킹 I/O 모델을 사용해 가볍고 효율적이다. 또한 패키지 매니저인 npm은 오픈소스
내 mongoose 버젼은 "mongoose": "^7.4.4" 였기때문에 두 가지 옵션은 주석처리를 했다. 그렇지 않으면이라는 에러가 뜨기 때문이다.
node.js는 javascript를 서버에서 사용할 수 있는 언어이다.express.js는 node.js를 조금 더 쉽게 사용할 수 있게 도와주는 프레임워크 이다.npm init을 하게되면 package.json이 생성된다.node_modules : 다운받은 "dep
HTML 페이지 안에 자바스크립트 코드는 아무 위치에나 올 수 있다.심지어는 html 태그 바깥에도 위치할 수 있다.HTML 페이지 안에 자바스크립트 코드를 넣을 때는 script 태그를 사용합니다.script 태그 안에 직접 자바스크립트 코드는 작성해 넣는 것과, 외
웹 레이아웃을 만들 때 폼 요소, 또는 스크롤바는 디자인을 예쁘게 만드는 게 쉽지 않은 요소이다.스크롤바 같은 경우 예쁘게 만들 수는 있지만, 약간의 호환성 문제가 있다.크롬과 신형 엣지 브라우저는 벤더 프리픽스(공급사 접두어)를 사용하면 스크롤바를 원하는 데로 꾸밀