TIL_express-middleWare_02)body Parser
2297 단어 항해99middlewareexpress생활코딩express
body Parser
body : 웹 브라우저 쪽에서 요청한 정보의 본체.
Header : 그 본체를 설명
body-parser : 그 본체를 해석 => 우리가 필요한 형태로 가공 해 주는 프로그램.
코드
1) Html - form 형식을 parse
app.use(bodyParser.urlencoded({ extended: false }))
2) json 데이터 parse
app.use(bodyParser.json())
실제 코드.
- 추가
var bodyParser = require('body-parser')
// 폼 형식으로 받은 데이터 (post 데이터 받는 부분)
app.use(bodyParser.urlencoded({ extended: false }))
/*bodyParser.urlencoded({ extended: false }) :
bodyParser가 만들어 내는 middleware를 만들어 내는 표현식 */
- post 방식으로 받은 데이터 부분
1) create
app.post('/create', (request, response) => {
//post는 body-parser 부분!
var post = request.body;
var title = post.title;
var description = post.description;
fs.writeFile(`data/${title}`, description, 'utf8', function (err) {
response.writeHead(302, { Location: `/page/${title}` });
response.end();
});
})
2)update_process
app.post('/update_process', function (request, response) {
//post는 body-parser 부분!
var post = request.body;
var id = post.id;
var title = post.title;
var description = post.description;
fs.rename(`data/${id}`, `data/${title}`, function (error) {
fs.writeFile(`data/${title}`, description, 'utf8', function (err) {
// response.writeHead(302, { Location: `/page/${title}` });
// response.end();
response.redirect(`/page/${title}`);
})
});
});
3) delete
app.post('/delete_process', function (request, response) {
//post는 body-parser 부분!
var post = request.body;
var id = post.id;
var filteredId = path.parse(id).base;
fs.unlink(`data/${filteredId}`, function (error) {
response.redirect('/');
// express에서 제공하는 redirect
// Google : nodejs express redirect 로 검색
/*기존:
response.writeHead(302, { Location: `/` });
response.end();*/
})
});
Author And Source
이 문제에 관하여(TIL_express-middleWare_02)body Parser), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@glowing0512_/TILexpress-middleWare02body-Parser저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)