Пример #1
0
        private async Task <List <Cats> > GetCat()
        {
            List <Cats> result = null;

            ApiConfigCats apiCats = new ApiConfigCats()
            {
                Params = new Params()
                {
                    Size      = "full",
                    MimeType  = "jpg",
                    Format    = "json",
                    HasBreeds = false, //array vazio com ele true
                    Order     = "RANDOM",
                    Page      = 0,
                    Limit     = 25
                }
            };

            //Metodo para montar a url com parametros
            string url = apiCats.GetUrlParams(apiCats.Params);

            CatsService service = new CatsService();

            result = await service.Get(url);

            return(result);
        }
        public async Task <List <Cats> > Get(string param)
        {
            ApiConfigCats api = new ApiConfigCats();

            List <Cats> returnObject = null;

            try
            {
                var client = new HttpClient();
                client.BaseAddress = new Uri(api.BaseAdress);
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(api.ContentType));
                client.DefaultRequestHeaders.Add("x-api-key", api.ApiKey);

                if (CrossConnectivity.Current.IsConnected)
                {
                    HttpResponseMessage response = await client.GetAsync(api.Url + param);

                    if (response.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        string Json = await response.Content.ReadAsStringAsync();

                        returnObject = JsonConvert.DeserializeObject <List <Cats> >(Json);
                    }
                }
            }
            catch (Exception ex)
            {
                //add Log
            }

            return(returnObject);
        }