2023.12.06 TIL

Oneik·2023년 12월 6일
0

📕오늘 학습한 내용

  • Express란?
  • Express 시작하기

Express란?

Node.js를 위한 웹 프레임워크 중 하나로 웹 애플리케이션, API 개발을 위해 설계되었다. 즉, 서버측에서 애플리케이션을 쉽게 구축하고 관리할 수 있게 도와주는 도구이다.

설치

npm install express

Express 시작하기

경로에 따라 응답(Response)하기

기본 라우팅

app.METHOD(PATH, HANDLER) 이와 같은 형식으로 작성한다

  • app : express 인스턴스
  • METHOD : HTTP에 요청 목적. 소문자로 작성한다
  • PATH : 서버에서의 경로
  • HANDLER : 해당 경로에 접근했을 때, 실행할 함수

예시

const express = require('express')
const app = express()
const port = 3000

app.get('/', (req, res) => { // '/'앞에 http://localhost:3000 생략
  res.send('Hello World!')
})

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`)
})

응답(Response)으로 객체 보내기

만약 책 제목, 가격, 설명 등 책에 대한 데이터를 보내줄 때 문자열로 함께 보내준다면, 어디서부터 어디까지 책 제목이고 가격, 설명인지 이해하기 힘들어 프론트에서 처리하기 힘들어진다.

그래서 Json이라는 객체에 책에 대한 데이터를 담아 한꺼번에 보내준다

const express = require('express')
const app = express()
const port = 3000

let nodeJsBook = {
	title : "Node.js를 공부해보자",
	price : 20000,
	description : "이 책 좋음"
}

app.get('/', (req, res) => { 
  res.json(nodeJsBook)
})

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`)
})

위처럼 response에 nodeJsBook이라는 객체를 담아 보낼 수 있다

JSON(Javascript Object Notation)이란?
직역하면 자바스크립트로 객체를 표기하는 방법이다
자바스크립트 객체가 어떤 형태인지 알려주고, key-value 형태로 구성되어있다

URL로 매개변수(Parameter) 받기

만약 1~1000까지의 상품 정보들을 응답받고 싶을 때 'products/1'과 같이 고정된 주소만 사용가능하다면, 1~1000까지 하드코딩해야하는 어려움이 있다.

이 때, 'products/'뒤의 숫자 부분을 매개 변수로 받는다면, 코드를 중복하여 하드코딩할 필요 없이 매개변수에 해당하는 정보를 보내줄 수 있다

app.get("/products/:n", function (req, res) {
  res.json({
    num: req.params.n,
  });
});

위처럼 ':' 뒤에 오는 값을 params에 담아 보내준다
params에 담겨진 매개 변수를 이용해 필요한 데이터를 찾아 응답할 수 있다

profile
초보 개발자의 블로그입니다

0개의 댓글

관련 채용 정보