더북(TheBook)

다음 단계는 들어 있는 문자열을 숫자로 파싱하고 어떤 이유로든 실패하면 바로 되돌아가는 것이다. HashMap::get 함수는 Option<&String>을 반환하므로 (값이 있는 경우) 문자열에 대한 참조를 얻는다. 이 타입에는 사용할 수 있는 parse 메서드가 있다. 해당 메서드를 호출할 때는 예상되는 타입을 지정해야 한다. 다음 예제를 살펴보자.

코드 4-20 start 매개변수를 usize 타입으로 파싱하기

...
async fn get_questions(
    params: HashMap<String, String>,
    store: Store,
) -> Result<impl warp::Reply, warp::Rejection> {

    if let Some(n) = params.get("start") {
        println!("{:?}", n.parse::<usize>());
    }
    ...
}
...
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.