Back-end/Node.js

[Node.js]RestAPI에서 PUT,DELETE,method-override 사용하기

먼저 RestAPI가 뭘까? 아래 게시물에 RestAPI가 뭔지 간단하게 정리해놓았다. (Server_RP2) #인스타그램클론코딩 EC2,RDS,RESTAPI apply.softsquared.com/ SOFTSQUARED 단순한 개발 지식만을배워가는 곳이 아닙니다 소프트스퀘어드는 함께 성장합니다. 개발 트레이닝을 통해 개인의 역량이 성장합니다. 성장한 역량은 소프트스퀘어드 resilient-923.tistory.com RestAPI에서 변경된 정보를 수정하는 방법에는 PUT,PATCH,DELETE가 있다. 하지만 PUT 과 DELETE는 HTML이 지원하지 않는다. express에서 app.put과 app.delete 대신에 app.post를 사용하는 경우가 있고 나또한 그렇게 개발을 했었던 적이 있는데..

2021.06.19 게시됨

Back-end/Node.js

[Node.js]Logging 모듈 winston이란?

Nodejs로 Express 서버를 만들 때 디버깅용도로 console.log를 자주 사용했었다. 하지만 한계가 있고, Project를 실제 수행하다보면 서버의 동작을 파악하거나 오류를 찾아야 할때 로그파일을 뒤져보는 것이 중요하다고 느꼈다. 그래서 이번에는 Logging을 돕는 winston 라이브러리에 대해서 알아보려고 한다. 다음과 같이 npm 으로 설치를 해준다. winston과 winston-daily-rotate-file를 설치한다. winston은 로그를 남기는 라이브러리이고, winston-daily-rotate-file은 1일 단위로 로그를 쌓도록 관리해주는 라이브러리이다. npm install --save winston winston-daily-rotate-file npm install..

2021.06.17 게시됨

Back-end/Node.js

[Node.js]express에서 cors란?

로컬에서 프런트 서버와 백엔드 서버의 포트를 다르게 사용할 때 발생하는 문제인 CORS 해결방법에 대해 정리해보려고 한다. CORS란? CORS는 Cross Origin Resource Sharing의 약자로 도메인 및 포트가 다른 서버로 클라이언트가 요청했을 때 브라우저가 보안상의 이유로 API를 차단하는 문제이다. 예를 들어, 도메인 www.abc에서 읽어온 HTML페이지에서 다른 도메인 www.aaa.com/image.jpg를 요청하는 경우를 말한다. 이런 경우에 해당 리소스는 cross-origin HTTP 요청에 의해 요청된다. 이러한 보안 상의 이유로, 브라우저는 CORS를 제한하고 있다. 해결방법은? 간단하게 express cors Middleware (미들웨어)를 적용하는 것이다. http..

2021.06.16 게시됨

Back-end/Node.js

[Node.js]SingleThread(싱글스레드)

싱글 스레드란 이벤트 기반, 논 블로킹 모델과 더불어 노드를 설명할 때 싱글 스레드라는 용어가 자주나온다. 싱글 스레드란 말그대로 스레드가 하나라는 말이다. 이 이유로 자바스크립트 코드가 동시에 실행될 수 없다. 스레드를 이해하기 위해서는 프로세스부터 알아야 한다. 프로세스와 스레드의 차이는 아래와 같다. 프로세스는 운영체제에서 할당하는 작업의 단위이다. 노드나 웹 브라우저 같은 프로그램은 개별적인 프로세스이다. 프로세스간에는 메모리 등 자원을 공유하지 않는다. 스레드는 프로세스 내에서 실행되는 흐름의 단위이다. 프로세스는 스레드를 여러개 생성해서 여러 작업을 동시에 처리할 수 있다. 스레드들은 부모 프로세스의 자원을 공유하고 같은 주소의 메모리에 접근해서 데이터를 공유할 수 있다. 노드가 싱글 스레드라..

2021.05.07 게시됨