@@ -38,31 +38,28 @@ impl From<WikiResultSingle> for SearchResult {
3838pub async fn search (
3939 client : & reqwest:: Client ,
4040 search_text : & str ,
41- full_text : String ,
42- ) -> ( String , Result < Vec < SearchResult > , SearchError > ) {
41+ ) -> Result < Vec < SearchResult > , SearchError > {
4342 let url =
4443 format ! ( "https://en.wikipedia.org/w/rest.php/v1/search/title?q={search_text}&limit=5" ) ;
45- let req_result = async |url| -> Result < Vec < SearchResult > , SearchError > {
46- {
47- let response =
48- client. get ( url) . send ( ) . await . map_err ( |e| {
49- SearchError :: BadResponse ( format ! ( "failed to get response: {}" , e) )
50- } ) ?;
5144
52- let text = response
53- . text ( )
54- . await
55- . map_err ( |e| SearchError :: BadResponse ( format ! ( "failed to get text: {}" , e) ) ) ?;
56- log:: trace!( "text found from wikipedia: {}" , text) ;
57- let data: WikiResults = serde_json:: from_str ( & text) . map_err ( |e| {
58- SearchError :: BadResponse ( format ! ( "failed to parse from json: {}" , e) )
59- } ) ?;
45+ let response = client
46+ . get ( url)
47+ . send ( )
48+ . await
49+ . map_err ( |e| SearchError :: BadResponse ( format ! ( "failed to get response: {}" , e) ) ) ?;
6050
61- let parsed = data. pages . into_iter ( ) . map ( |result| result. into ( ) ) . collect ( ) ;
62- log:: debug!( "parsed text from wikipedia: {:#?}" , parsed) ;
63- Ok ( parsed)
64- }
65- } ;
51+ let text = response
52+ . text ( )
53+ . await
54+ . map_err ( |e| SearchError :: BadResponse ( format ! ( "failed to get text: {}" , e) ) ) ?;
55+
56+ log:: trace!( "text found from wikipedia: {}" , text) ;
57+
58+ let data: WikiResults = serde_json:: from_str ( & text)
59+ . map_err ( |e| SearchError :: BadResponse ( format ! ( "failed to parse from json: {}" , e) ) ) ?;
60+
61+ let parsed = data. pages . into_iter ( ) . map ( |result| result. into ( ) ) . collect ( ) ;
62+ log:: debug!( "parsed text from wikipedia: {:#?}" , parsed) ;
6663
67- ( full_text , req_result ( url ) . await )
64+ Ok ( parsed )
6865}
0 commit comments