Node.js. Express-POST방식을 통한 정보 전달


get방식을 통해서 정보를 가져왔다. 

요청을 하고 get방식을 통해 가져온다는 것


post : 사용자의 정보를 서버로 전송할때는 post를 사용해서 처리한다.



GET vs POST


GET방식 으로 사용해 보자. 

GET으로 보내면 URL에 쿼리스트링 방식으로 전달한다.

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.get('/form_receiver', function(req,res){

var title = req.query.title;

var descrpition = req.query.description;

res.send(title+','+description);

});



POST방식 으로 사용해 보자.

doctype html html head meta(charset='utf-8') body form(action='/form_receiver' method='post') p input(type='text' name='title') p textarea(name='description') p input(type='submit')

app.post('/form_receiver', function(req,res){

var title = req.body.title;                // 문제발생을 해결하기 위해 body-parser설치 필요

var descrpition = req.body.description;

res.send(title+','+description);

});


body-parser 를 사용해야한다. <설치>

npm install body-parser --save


// var bodyParser = require('body-parser')

// qpp.use(bodyParser.urlencoded({extended: false}))

미들웨어 를 통해서 body-paser가 post를 통해 전달된 내용을 사용할 수 있게 해준다.

req.body.title. body를 사용할 수 있게 되었다.




언제 GET방식을 쓰고 언제 POST방식을 사용해아 하는 것일까?


사용자 정보를 GET방식으로 보내면 POST방식을 사용해서 보내야 

URL상에 사용자 정보가 입력되어 나타나지 않게 된다. POST지향


URL에 쿼리스트링을 사용하는데 데이터 길이가 너무 길면 GET방식을 사용하는데에 제약이 될 수 있다.

많은 데이터 전송시 POST지향


링크를 걸어서 이동하는 경우(게시판) 같은 경우에는 GET방식 사용도 괜찮다.



+ Recent posts