본문 바로가기

백엔드/nodeJS

express (6) - GET / POST

<form>에서의 GET / POST

GET방식은 submit할 경우 url을 이동한다. 아래와 같이 action 값과 input에 name 값을 주면 아래 주소창에 나와 있는 url로 이동한다.  이러한 방식은 포털사이트에서 검색할 때 주로 사용된다. (여기서는 비디오 검색할 때 사용할 예정) form에 있는 정보가 url에 들어간다.

 

action 값을 적어주면 해당 url로 이동한다.

 

 

 

POST 방식은 파일을 보내거나 database 값을 바꾸는 뭔가를 보낼 때 POST를 사용한다. method="POST"라고 지정해야하며 서버(라우터)에게도 POST방식을 알려줘야 작동이 가능하다. 웹사이트 로그인할 때도 POST 방식이 사용된다. data를 수정할 때는 새로운 url로 이동할 필요가 없어 action 값을 주지 않아도 된다. (똑같은 url로 request한다.)

 

서버(라우터)에 POST 방식 인식

 

req.body을 활용하여 form / input에 입력한 값을 받아올 수 있다. req.body는 input-name이 있어야 적용이 가능하다. 평범한 express는 form 입력값을 바로 불러올 수 없기 때문에 서버에 express function method를 이용해야 한다.

 

app.use(express.urlencoded({extended : true});

middleware가 router오기 전에  작성해줘서 req.body를 알 수 있다. *위에서 아래로 내려가며 실행(순서 중요)

 

middleware

video[id-1].title = title;

수정한 데이터를 배열에 업데이트 (진짜 데이터베이스가 아니라서 크게 신경쓰지 않아도 된다.)

데이터를 직접 수정한게 아니여서 서버를 재시작하면 수정 전으로 돌아간다. 

res.redirect(주소) : 해당 주소로 이동할 수 있다.

 

 

반응형

'백엔드 > nodeJS' 카테고리의 다른 글

Sessions and Cookies  (0) 2023.07.23
브라우저 Status Code  (0) 2023.07.16
express (5) - absolute / relative URL  (0) 2023.06.25
Express View engine - PUG (3)  (0) 2023.06.23
Express View engine - PUG (2), mvp.css  (0) 2023.06.22