TIL : 210702_금_(목요일 + extra)

beablessing·2021년 7월 5일
0

TIL

목록 보기
6/33
post-thumbnail

오늘 배운것(어제내용+extra)

  • 매우 기본적인 서버 구현 (feat.express)
  • 서버에서 client가 보낸 요청바디 불러오기

응답

res.json()
받은인자를 json문자열로 변환해, 헤드에 content-type, application/json 으로 세텅해주고,
body인자에 저장해서 내부적으로 res.send를 호출하여 body를 인자로 넘겨줍니다????

수업중 어떤분이 정리해주신 내용인데, 이렇게 이해하면 좀 더 알기 쉬운것같다.
결국에는 json()으로 res.send의 역할을 충당할 수 있다는 것.

next()는 왜 사용하는가 ?

next()
넥스트를 호출하지 않는다면, 파이프라인이 그 미들웨어에서 종료되고,
이후에 작성된 라우트핸들러와 미들웨어가 호출되지 않게 됨.
따라서 계속해서 next()함수를 호출해주자.

기본서버 구현시, 알고있어야함

  • Buffer도 플러스 연산이 가능함
  • same origin인 경우에만, 데이터를 전송 허용하게 됨 (아래 3가지가 동일해야 같은오리진)
    1.protocol(http,https)
    2.domain
    3.port
    ==> cross origin의 경우 'Header' 지정이 필수임.
const defaultCorsHeader = {
'Access-Control-Allow-Origin': '*',  //오리진 지정
'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS',  //메소드 지정
'Access-Control-Allow-Headers': 'Content-Type, Accept',  //헤더지정
'Access-Control-Max-Age': 10  //얼마나 자주 preflight req할건지?
};

-params/ query 차이
1.params : /user/:name ==> req.params
2.query: 객체로 들어옴 ==>req.query이런식으로 받아온다

  • 미들웨어는 프로세서 중간에 관여하여 특정역할을 수행한다.
    요청-응답 사이에 컨베이어벨트의 역할?
    logger,cors미들웨어,body해석미들웨어 등의 것들을 미들웨어로 넣을 수 있다
    단, 모두 install 및 등록해주어야 함.
profile
프론트엔드 개발자

0개의 댓글