웹 서버에서 요청을 받을 때, 모든 요청에 대한 공통적인 처리를 하고 싶을 때 필요한 것이 미들웨어(Middleware)입니다. 미들웨어 ■ 서버의 요청-응답 과정에서 중간에 위치하여 특정 기능을 수행하는 함수입니다. ■ 모든 요청에 대해서 로그(Logging)를 남기거나, 특정 사용자만 API를 접근(Authentication & Authorization)하게 하고 싶을 때도 미들웨어를 사용합니다. ■ 사용자가 웹페이지에서 Form을 통해 전송한 데이터를 서버에서 쉽게 파싱(Body Parser)하기위하여 사용할수도 있습니다. (express.js Middleware) ■ 다양한 백엔드 리소스에 대한 연결을 관리합니다. 백엔드 데이터베이스에 대한 빠르고 효율적인 액세스를 위해 연결 풀을 생성 할 수 있..
백엔드 설계 작업 REST API 1. 할일 추가하기 → POST / api / todos 2. 할일 목록 보기 → GET / api / todos 3. 할일 내용 변경하기 → PATCH / api / todos / :todoId 4. 할 일 순서 변경하기 → PATCH / api / todos / :todoId 5. 할 일 완료하기 → PATCH / api / todos / :todoId 6. 할 일 완료 해제하기 → PATCH / api / todos / :todoId 6. 할 일 삭제 → DELETE / api / todos / :todoId ※주의 ※ 더보기 경로 설정할 때 REST API 즉, 네트워크 표현 수단을 사람이 봐도 이해하기 쉬운 표현으로 정의 하기 위해 seememo, getmemo..
Request(요청), Response(응답) Request(요청) ■ 클라이언트가 서버로 보내는 메세지를 담는 객체입니다. ■ URL, HTTP 프로토콜, Header, Query Parameter, body data(요청과 함께 전달되는 데이터)등이 포함됩니다. Response(응답) ■ 서버에서 클라이언트로 보내는 메세지를 담은 객체입니다. ■ 상태코드(Status Code), response data, response header등이 포함됩니다. req객체 req.app req 객체를 통해 Express.js의 app객체에 접근할 수 있습니다. req.ip 요청한 Client의 ip주소가 담겨있습니다. req.body Request를 호출할 때 body로 전달된 정보가 담긴 객체입니다. • exp..
Node.js는 대표적으로 논 블로킹(Non-blocking) I / O, 싱글 스레드(Single Thread), 이벤트 루프(Event Loop)의 특성이 있습니다. 논 블로킹 I / O(Non-Blocking Input / Output) 블로킹 I/O와 논블로킹 I/O는 프로그램의 실행 흐름을 제어하는 방식입니다. 블로킹 방식 - 프로그램이 특정 작업을 수행하는 동안 다른 작업을 중단시키는 방식입니다. 논블로킹 방식 - 프로그램이 여러 작업을 동시에 처리할 수 있는 장점이 있습니다. I/O - 데이터의 입력(Input) / 출력(Output)을 의미하며 파일을 저장하거나, 불러오는 것을 I/O처리한다라고 합니다. 블로킹 I/O ● 한번에 하나의 작업만을 처리할 수 있으며, 호출된 함수가 자신의 작업..
라우터가 위치할 곳에 객체를 만들어 놓기 api/goods.js //goods.js const goods = [ { goodsId: 1, name: '상품 1', thumbnailUrl: 'https://cdn.pixabay.com/photo/2016/09/07/19/54/wines-1652455_1280.jpg', category: 'drink', price: 6.2, }, { goodsId: 2, name: '상품 2', thumbnailUrl: 'https://cdn.pixabay.com/photo/2014/08/26/19/19/wine-428316_1280.jpg', category: 'drink', price: 0.11, }, { goodsId: 3, name: '상품 3', thumbnailU..
제대로된 경로에 yarn을 install했는데도 보안 오류가 뜹니다. 이런 경우는 스크립트를 실행할 권한이 없을 때 생기는 오류입니다. 해결법 0. 관리자 권한으로 windows PowerShell을 킵니다. 1. 권한을 확인합니다. get-ExecutionPolicy 2. 권한을 RemoteSigned로 바꿔줍니다. Set-ExecutionPolicy RemoteSigned 3. 다시 권한을 확인해보면 바뀐걸 확인 할수 있습니다. 4. vs코드로 돌아가 다시 확인해보면 버전이 잘 출력되는걸 확인 할 수 있습니다.