form과 GET
views/form.jade
form 태그의 method를 생략하면 기본적으로 GET방식이다.
doctype html
html
head
meta(charset='utf-8')
body
form(action='/form_receiver' method='get')
p
input(type='text' name='title')
p
textarea(name='description')
p
input(type='submit')
app.js
GET 방식은 query string을 통해 데이터를 받을 수 있다.
app.get('/form', function(req, res){
res.render('form');
});
app.get('/form_receiver', function(req, res){
var title = req.query.title;
var description = req.query.description;
res.send(title+', '+description)
});
form과 POST
body-parser이라는 middleware가 필요하다. [참고]
> npm install body-parser
그리고 form.jade의 form의 method를 'post'로 바꿔보자
app.js
POST 방식은 body라는 객체를 통해 데이터를 가져온다
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: false }))
app.post('/form_receiver', function(req, res){
var title = req.body.title;
var description = req.body.description;
res.send(title+', '+description)
});
GET과 POST의 용도
GET: url에 모든 정보가 표시되고, 이를 가져오려고 할 때
POST: url에 표시되지 않는 정보를 가져올 때
ex) 아이디, 비밀번호, 데이터가 많을 때
그렇다고 POST가 더 보안상으로 안전한 것은 아니다. 그것은 다른 차원의 문제(HTTPS...)
'Javascript > nodejs' 카테고리의 다른 글
[Node.js: Express: URL을 이용한 정보의 전달] query string / query 객체 / Semantic URL (0) | 2020.03.20 |
---|---|
[Node.js: Express Template Engine] 템플릿 엔진 사용법, Jade 문법 (0) | 2020.03.20 |
[Node.js: Express] Express를 이용한 간단한 웹앱 만들기 / 정적 파일 서비스 방법 / 동적으로 웹페이지를 표현하는 방법 (0) | 2020.03.20 |
[Node.js: 비동기(Asynchronous)] 비동기와 동기 처리 방식 (0) | 2020.03.20 |
[Node.js: 모듈(Module)] NPM / 모듈 설치 (0) | 2020.03.20 |