pub async fn fetch<T>( url: &str, params: &[(impl AsRef<str>, impl AsRef<str>)], ) -> Result<T, Box<dyn Error>>where T: DeserializeOwned,