요청 객체가 요청 라이프 사이클이 아닌 애플리케이션 라이프 사이클 throughtout 동일합니다 "Connect이 방식으로 작동하도록 설계되어 있기 때문에 그것의"입니다.
예 : 당신은 순서대로 두 가지 기능 authenticate
및 UserController.profile
를 호출 명시 경로 /profile
에 대한 요청이 이제 때마다
app.get("/profile", authenticate, UserController.profile);
(임의의 숫자 일 수)이 미들웨어와 같은 경로를 가지고있다.
각 함수에 세 개의 인수를 전달합니다. req
, res
, next
.
그러나 첫 번째 함수가 실행을 완료했는지 어떻게 알 수 있습니까? next
콜백을 사용합니다. 따라서 authenticate
이 next()
을 호출하면 함수 실행이 완료되었음을 알게되고 동일한 인수를 사용하여 UserController.profile
을 호출합니다.
req
은 개체이므로 모든 콜백에 동일한 req
개체가 전달되므로 개체에서 변경 한 사항은 해당 요청에 대한 모든 미들웨어/콜백 익스프레스 통화에서 사용할 수 있습니다.
이렇게 사실인가요?
아니요, 라우트 메소드에도 해당됩니다. 라우트 메소드는 라우트가 일치 할 때만 호출되며, app.use
미드웨어가 각 요청에 대해 호출됩니다.