Etc/Node.js 5

[Node.js] 미들웨어란?

미들웨어란? - 요청과 응답의 중간에 위치하며 클라이언트에게 요청이 오면 그 요청에 대한 응답을 보내기 위해 중간에서 목적에 맞게 처리를 해주는 함수들이다. - req, res, next를 매개변수로 가지며, app.use나 app.get, app.post 등으로 장착한다. - 에러 처리 미들웨어만 예외적으로 err, req, res, next를 가진다 미들웨어 사용법 - 특정한 주소의 요청에만 미들웨어가 실행되게 하려면 첫 번째 인수로 주소를 넣으면 된다. - 다음 미들웨어로 넘어가려면 next 함수를 호출해야 한다. - next를 호출하지 않는 미들웨어는 res.send나 res.sendFile 등의 메서드로 응답을 보내야 한다. - next도 호출하지 않고, 응답도 보내지 않으면 클라이언트는 하염없..

Etc/Node.js 2023.03.27

[Node.js] 노드 프로젝트 시작하기

1. $ npm init - 프로젝트를 시작할 폴더로 이동한 후 명령어를 입력한다. - 명령어 입력으로 생성된 package.json 파일에 패키지 설정 정보를 입력한다. - main : 자바스크립트 실행 파일 진입점인 index.js - scripts : start 속성 (nodemon app은 app.js를 nodemon으로 실행한다는 의미다.) * nodemon : 서버 코드에 수정사항이 생길때마다 서버를 자동으로 재시작하는 모듈 { "name": "npmtest", "version": "0.0.1", "description": "hello package.json", "main": "index.js", "scripts": { "start": "nodemon app" }, "author": "jiae..

Etc/Node.js 2023.03.08

[Node.js] 2.2 알아둬야 할 자바스크립트 - 프런트엔드 자바스크립트

예제의 프런트엔드에 사용되는 기능을 설명한다. 1. AJAX - 페이지 전환 없이 서버에 요청을 보내고 응답을 받는 기술이다. - JQuery나 axios 같은 라이브러리를 이용하여 AJAX 요청을 보낼 수 있다. 2. FormData - HTML form 태그의 데이터를 동적으로 제어할 수 있는 기능으로 주로 AJAX와 함께 사용된다. (axios로 폼 데이터를 서버로 보낸다.) - FormData 메서드 - apend : 키-값 형식의 데이터를 저장한다. (키 하나에 여러 개의 값 추가 가능) - has : 주어진 키에 해당하는 값이 있는지 여부를 알린다. - get : 주어진 키에 해당하는 값 하나를 가져온다. - getAll : 주어진 키에 해당하는 모든 값을 가져온다. - delete : 현재 ..

Etc/Node.js 2023.03.08

[Node.js] 2.1 알아둬야 할 자바스크립트 - ES2015+

1. const, let - 공통점 : 블록 스코프를 가진다. (var는 함수 스코프를 가지므로 블록과 상관없이 변수에 접근 가능) - 차이점 : const는 상수로 한 번 값을 할당하면 다른 값을 할당할 수 없다. 따라서 기본적으로 변수 선언할땐 const를 사용하고, 다른 값을 대입해야 하는 상황이 생기면 let을 사용한다. 2. 템플릭 문자열 - 일반 문자열과 달리 따옴표가 아닌 백틱(`)으로 감싼다. - ${변수} 형식으로 변수를 문자열 안에 넣을 수 있다. const num3 = 1; const num4 = 2; const result2 = 3; const string2 = `${num3} 더하기 ${num4}는 '${result2}'` console.log(string2) // 1 더하기 2는..

Etc/Node.js 2023.03.08

[Node.js] 1. 노드 시작하기

📢 본격적으로 실습에 들어가기 전, 노드의 특징에 대해 알아보자 1. 서버로 많이 쓰인다 - 서버란 데이터를 저장하고, 클라이언트에게 데이터를 받아오는 곳을 의미한다. - 요청에 대한 응답만 하는 것이 아닌, 다른 서버에 요청을 할 수도 있다. 2. 자바스크립트 런타임이다 - 런타임이란 특정 언어로 만든 프로그램을 실행할 수 있는 환경을 의미한다. 즉, 노드는 자바스크립트 실행기다. 3. 이벤트 기반 방식으로 동작한다 - 이벤트가 발생시 미리 지정해둔 작업을 수행하는 방식을 이벤트 기반이라고 한다. 이때 작업을 미리 지정하는 걸 '이벤트 리스너에 콜백 함수를 등록한다'고 표현한다. - 예) 버튼을 클릭했을때 경고창을 띄우려면 ① 클릭 이벤트 리스너에 경고창을 띄우는 콜백 함수를 등록한다. ② 클릭 이벤트..

Etc/Node.js 2023.03.08