[EXPRESS] req.params / req.query / req.body


     

    req.params

    =  :id,  :naem와 같은 매개변수값들을 의미한다.

    // url이 ~/videos/5/edit 인 경우 5가 id값이 된다.
    // (\\d+)는 하나 혹은 그 이상 연결된 숫자만을 가져오라는 정규식이다.
    videoRouter.get("/:id(\\d+)/edit",getEdit)

     

     

     

    req.body

    = POST로 바디데이터(JSON)등의 데이터를 받을 때 사용

    = form의 value 값을 가지고싶다면 express의 urlencoded()를 사용해야하는데
       app.use(express.urlencoded({extended:true})) 을 서버와 관련된 js파일에  추가해야한다.
       -> form의 body를 이해

     

    아래와 같은  form에서 데이터를 받아와 req.body를 확인해보면 { title: 입력한 제목명 , description : 입력한 내용 } 와 같다.

        form(method="POST")
            input(name = "title", placeholder="Write Video Title",type="text",required)
            input(name = "description",required,type="text",placeholder="Write Description")
            input(value="Save",type="submit")

     

    주의해야할 점은 키-값 데이터 쌍으로 이루어져있기때문에 name(key)을 꼭 지정해줘야한다.

     

     


    req.query 

    = url에서 query값을 가져온다.

    = ex. https://localhost/search?title=lemon 의 경우 title 매개변수의 값인 lemon을 가져온다.

    댓글