warp::path::end 뒤에 and를 query 필터와 함께 추가하고 그 뒤에 store_filter를 추가한다. get_questions에 매개변수를 추가할 때는 필터의 순서를 따라야 한다.
코드 4-16 쿼리 매개변수 HashMap을 경로 핸들러에 추가하기
...
async fn get_questions(
params: HashMap<String, String>,
store: Store
) -> Result<impl warp::Reply, warp::Rejection> {
let res: Vec<Question> = store.questions.values().cloned().collect();
Ok(warp::reply::json(&res))
}
...
이제 코드가 컴파일되고 실행될 것이다. HTTP 요청에 무엇이 있는지 콘솔에 출력하여 새로운 매개변수를 어떻게 처리하면 좋을지 알아보자.