더북(TheBook)

추가된 코드의 의미는 다음과 같다.

warp::any를 사용하면 any 필터에 별도의 제약이 없으므로 모든 요청과 일치하여 모든 요청을 실행한다.

.map을 사용하면 필터에서 map을 호출하여 받는 함수에 값을 전달한다.

map 내부에서는 러스트 클로저를 사용한다. move 키워드는 값으로 가로챔(capture by value)을 나타낸다. 즉, 값을 클로저로 이동시켜 소유권을 가져온다.

Warp 필터가 적용되는 모든 함수가 저장소를 사용할 수 있도록 저장소의 복제본을 반환한다. 지금은 경로가 하나뿐이어서 복제할 필요까지는 없다. 그러나 이 다음에 경로 핸들러를 여러 개 만들고 이들 모두가 저장소에 접근해야 하므로 복제해야 한다.

이제 경로 핸들러에 필터를 적용한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.