일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Express middleware
- 맥북 사용법
- 자바 기술면접
- 아톰에디터
- 백준
- 리액트
- AtomEditor
- Node.js Express
- mysql
- 백준 알고리즘
- 백준 단계별로 풀어보기
- React
- 기술면접
- 맥북 필수 앱
- 자바 영어면접
- jsx 문법
- 자바 면접
- 맥북 유용한 앱
- 자바 개발자
- 생활코딩
- Java tech interview
- react jsx
- node.js
- 맥북 초보
- 알고리즘
- react state
- React props
- tech interview
- 맥북 팁
- 자바 인터뷰
- Today
- Total
song.log
[Node.js] Express 미들웨어 사용 : body-parser, compression 본문
1. Express의 Third-party middleware - body-parser :
https://expressjs.com/en/resources/middleware/body-parser.html
Third-party middleware는 Express가 제공하는 것이 아닌 제 3자가 만들어낸 소프트웨어를 칭하는 것이다.
그 중 post 방식으로 전송된 데이터를 body-parser라는 미들웨어를 통해 가져오는 방식에 대해서 보겠다.
우리가 지난 포스팅에 post 방식의 데이터를 가져올 때는 아래의 코드를 사용했다.
app.post('/create_process', function(request, response){
var body = '';
request.on('data',function(data){
body += data;
});
request.on('end',function(){
var post = qs.parse(body);
var title = post.title;
var description = post.description;
fs.writeFile(`data/${title}`,description,'utf-8',function(err){
response.writeHead(302,
{Location: `/`});
response.end();
});
});
});
먼저 body-parser를 설치하고
npm install body-parser --save
bodyParser를 사용할 수 있도록 코드 입력.
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: false }));
request객체의 body property로 접근해서 post로 전송 받은 데이터를 가져오는 형식으로 수정
app.post('/create_process', function(request, response){
var post = request.body;
var title = post.title;
var description = post.description;
fs.writeFile(`data/${title}`,description,'utf-8',function(err){
response.writeHead(302, {Location: `/`});
response.end();
});
});
2 Express의 Third-party middleware - compression :
웹 페이지의 데이터 크기가 어마어마할 때 웹브라우저에서 이 페이지를 열 때 필요로 하는 용량이 굉장히 클 것이다.
이 때, 이 페이지를 압축하기 위한 미들웨어가 'compression'
compression 설치 :
npm install compression --save
사용 방법 :
var bodyParser = require('body-parser');
var compression = require('compression');
app.use(bodyParser.urlencoded({ extended: false }));
app.use(compression());
용량이 줄어들음을 확인 할 수 있다.
content-encoding : gzip 으로 되면서 용량이 압축됨
참조한 생활코딩 URL :
https://opentutorials.org/module/3590/21397
https://opentutorials.org/module/3590/21398
'DevLog > Node.js' 카테고리의 다른 글
[Node.js] Express : Router(라우터) , 보안 , Express-generator (0) | 2019.12.30 |
---|---|
[Node.js] Express : 미들웨어(Middleware) 만들기, 실행 순서, 사용법 (0) | 2019.12.23 |
[Node.js] Express의 hello world, Route Parameter, 홈페이지 구현, 페이지 생성, 수정, 삭제 기능 구현 (0) | 2019.12.23 |
[Node.js] 모듈의 형식&제작, 입력 정보/출력 정보에 대한보안 (0) | 2019.12.21 |
[Node.js] 글생성, 글수정, 글삭제 : post방식으로 전송된 데이터 받기, Redirection, 객체를 이용해서 템플릿 기능 정리 정돈하기 (0) | 2019.12.21 |