Example #1
0
        //public static async Task<T> Get<T>(UploadTrackingApiRequest request)
        //{
        //    try
        //    {
        //        HttpResponseMessage response;
        //        using (var http = new HttpClient())
        //        {
        //            string queryString = "?";

        //            http.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

        //            if (request.Header != null)
        //            {
        //                foreach (var header in request.Header)
        //                {
        //                    http.DefaultRequestHeaders.Add(header.Key, header.Value);
        //                }
        //            }

        //            if (request.QueryString != null)
        //            {
        //                foreach (var qString in request.QueryString)
        //                {
        //                    queryString += qString.Key + "=" + qString.Value + "&";
        //                }
        //            }

        //            response = await http.GetAsync(request.Url + queryString);
        //        }
        //        return JsonConvert.DeserializeObject<T>(await response.Content.ReadAsStringAsync());
        //    }
        //    catch (Exception ex)
        //    {
        //        throw ex;
        //    }
        //}

        public static async Task <UploadTrackingApiResponse <T> > Get <T>(UploadTrackingApiRequest request)
        {
            UploadTrackingApiResponse <T> response = new UploadTrackingApiResponse <T>();

            try
            {
                using (var http = new HttpClient())
                {
                    string queryString = "?";

                    http.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                    if (request.Header != null)
                    {
                        foreach (var header in request.Header)
                        {
                            http.DefaultRequestHeaders.Add(header.Key, header.Value);
                        }
                    }

                    if (request.QueryString != null)
                    {
                        foreach (var qString in request.QueryString)
                        {
                            queryString += qString.Key + "=" + qString.Value + "&";
                        }
                    }

                    var result = await http.GetAsync(request.Url + queryString);

                    try
                    {
                        T data = JsonConvert.DeserializeObject <T>(await result.Content.ReadAsStringAsync());

                        response.Data         = data;
                        response.StatusCode   = result.StatusCode;
                        response.ErrorMessage = result.ReasonPhrase;
                    }
                    catch (Exception ex)
                    {
                    }

                    //result.RequestMessage = response.ErrorMessage;

                    return(response);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #2
0
        //public async Task<IActionResult> UploadTracking()
        //{
        //    _shopifyBLL.CreateFulfillment();
        //}

        public IActionResult HandleStatusCode <T>(HttpStatusCode statusCode, UploadTrackingApiResponse <T> response)
        {
            if (response.StatusCode == HttpStatusCode.OK)
            {
                return(Ok(response.Data));
            }

            else if (statusCode == HttpStatusCode.NotFound)
            {
                return(NotFound());
            }

            else if (statusCode == HttpStatusCode.Accepted)
            {
                return(Accepted(response.Data));
            }

            else if (statusCode == HttpStatusCode.BadRequest)
            {
                return(BadRequest(response.ErrorMessage));
            }

            return(Ok());
        }