• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

미들웨어 확장 쪽 에서 문법

22.07.18 23:55 작성 조회수 131

0

app.use('/',express.static(path.join(__dirname,'public')));

여기서 expres.static(path.join(~~~) 이 부분은 현재 콜백함수기 때문에 함수의 이름이나 선언이 들어가야하는 부분인데, 저렇게 path.join(__dirname, 'public)으로 매개변수가 들어가있는 것은 express.static의 return값 자체가 함수라고 이해하면 될까요? 마치 고차함수처럼요.

 

만약 그런거라면,

app.use('/',(req,res,next)=>{
    if(req.session.id){
        // 만약 세션아이디가 있으면 => 로그인한 사용자라면
        
        // '/'이하로 로 온 모든 요청에 대해 static 미들웨어를 실행한다.
        express.static(__dirname,'public')(req,res,next)
    }
})

이 코드에서는 express.static(__dirname, 'public')부분이 함수명이나 다름없고, (req, res, next)라는 인수를 집어넣어서 함수를 호출한거라고 이해해도 되나요?

답변 1

답변을 작성해보세요.

1

네 정확합니다! 고차함수입니다.