서버에서 데이터 받기 (POST)

사용자의 요청은 서버 코드의 request변수에 들어온다.

var app = http.createServer(function(request,response)

여기서 서버는 사용자의 요청이 들어올 때마다 두번째 인자인 function을 실행한다고 한다.

app.listen(3000)으로 사용자의 요청을 기다린다고 하는데,,

app.listen은 한번의 요청으로 app에 들어있는 함수 값을 한번만 실행하는 것이 아니라 요청마다 처리를 하고 다음 요청을 기다리는 것 같다.

creatServer는 한번만 실행되고 그 안에 call-back함수만 요청될 때마다 실행되는듯 하다.

이 때 request에 들어있는 url 정보는 지금까지 사용했었고 post방식으로 전송되는 데이터는 request.on으로 사용할 수 있다. request.on은 한 페이지에서 요청을 계속 기다리는 함수이다. 요청이 올 때마다 requet.on('data', function(data))의 콜백함수를 실행시켜 데이터를 계속 덮어쓰거나 추가할 수 있다.
그리고 requet.on('end', function())으로 정보 수신이 끝났을 때 콜백함수를 실행시키는 방법으로 수신을 멈출 수 있다.

계속해서 body 변수에 계속해서 data를 수신하다가 querystring 모듈을 require해서 body를 parse하면 수신받은 데이터를 처리할 수 있다.

좋은 웹페이지 즐겨찾기