code
import express from "express";
import cors from "cors";
import cookieParser from "cookie-parser";
import morgan from "morgan";
import helmet from "helmet";
const app = express();
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(express.static("public"));
app.use(cors());
app.use(cookieParser());
app.use(morgan("combined"));
app.use(helmet());
app.get("/", (req, res) => {
res.send("HOME");
});
app.post("/", (req, res) => {
res.send({ body: req.body, cookie: req.cookies });
});
app.listen(8000);
- 기본 페이지
![](https://velog.velcdn.com/images/fkstndnjs/post/43d31836-323e-452e-97aa-6f982f849c59/image.png)
morgan()
이 적용되어 터미널에 관련 정보들이 출력되는 것을 볼 수 있다.
![](https://velog.velcdn.com/images/fkstndnjs/post/41dbfb07-2925-49ef-b4cf-e425ff079e26/image.png)
cors()
가 적용되어 응답 헤더에 Access-Control-Allow-Origin: *
이 설정된 것을 볼 수 있다.
![](https://velog.velcdn.com/images/fkstndnjs/post/dc5f827e-da26-471c-b57f-cc151ba5141f/image.png)
helmet()
이 적용되어 응답 헤더에 X-Content-Type
, X-DNS-Prefetch-Control
등이 설정된 것을 볼 수 있다.
![](https://velog.velcdn.com/images/fkstndnjs/post/556f2c45-ad9a-4d07-8eff-1141d89195bb/image.png)
- 요청을 보낼 때
Headers
에 KEY
를 "Cookie"로 설정해두고 VALUE
에 쿠키로 설정해두고 싶은 값들을 "{key}={value}" 형태로 지정한다.
- 세미콜론(;)으로 구분지어 여러개를 등록할 수도 있다.
cookieParser()
가 적용되어 헤더에 담겨있는 쿠키가 객체로 파싱된 것을 볼 수 있다.
![](https://velog.velcdn.com/images/fkstndnjs/post/ccfa3f05-9a35-4e1e-a6cc-f8ec23fd66b7/image.png)
express.json()
이 적용되어 json 형식의 body가 객체로 파싱된 것을 볼 수 있다.
![](https://velog.velcdn.com/images/fkstndnjs/post/8962bdc6-2eef-4220-8477-b598010618d8/image.png)
- 이 역시
morgan()
이 적용되어 터미널에 관련 정보들이 출력되는 것을 볼 수 있다.
![](https://velog.velcdn.com/images/fkstndnjs/post/9fb852b8-c729-4d1f-a533-d90336bcbba2/image.png)