더북(TheBook)

코드 3-1 경로 필터 객체를 붙여 Warp 시작하기

...
// warp에서 Filter 트레이트를 가져온다
use warp::Filter;
...
#[tokio::main]
async fn main() {
    // 경로 필터를 만든다
    let hello = warp::path("hello").map(|| format!("Hello, World!"));

    // 서버를 시작하고 경로 필터를 서버에 전달한다
    warp::serve(hello).run(([127, 0, 0, 1], 3030)).await;
}

::path()에 대한 문서(http://mng.bz/82XP)를 보면 해당 함수가 Warp의 filter 모듈의 일부임을 알 수 있다. 경로 hello::serve 메서드에 전달하면 Warp는 주어진 IP 주소와 포트에서 들어오는 HTTP 요청을 받은 후 요청 각각을 주어진 필터와 맞춰 본다. 여기에서는 http://127.0.0.1:3030/hello로 요청한다. 서버를 실행한 후 브라우저를 열고 이 URL로 이동하면 Hello, World!가 브라우저 창에 표시된다.

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