Пример #1
0
        /// <summary>
        /// Metoto encargado de hacer una llamado e un
        /// get para el protocolo http
        /// </summary>
        /// <param name="urlBase"></param>
        /// <param name="resourceBase"></param>
        /// <param name="parameters"></param>
        /// <param name="headers"></param>
        /// <returns></returns>
        public ResponseServiceRequest Get(string urlBase, string resourceBase, List <Tuple <string, string> > parameters, List <Tuple <string, string> > headers)
        {
            ResponseServiceRequest reponseServiceRequets = null;

            try
            {
                if (!String.IsNullOrEmpty(resourceBase) && !String.IsNullOrEmpty(urlBase))
                {
                    if (urlBase[urlBase.Length - 1] == '/' || urlBase[urlBase.Length - 1] == '\\')
                    {
                        urlBase = urlBase.Remove(urlBase.Length - 1);
                    }


                    if (resourceBase[0] == '/' || resourceBase[0] == '\\')
                    {
                        resourceBase = resourceBase.Remove(0);
                    }



                    urlBase = String.Concat(urlBase, "/", resourceBase);

                    urlBase = AddParameterUrl(urlBase, parameters);


                    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlBase);

                    request.Method = MethodHttp.GET.ToString();


                    if (headers != null && headers.Count > 0)
                    {
                        foreach (Tuple <String, String> header in headers)
                        {
                            request.Headers.Add(header.Item1, header.Item2);
                        }
                    }


                    HttpWebResponse httpResponse = (HttpWebResponse)request.GetResponse();

                    reponseServiceRequets = new ResponseServiceRequest()
                    {
                        HttpStatusCode = httpResponse.StatusCode,
                    };

                    using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                    {
                        reponseServiceRequets.StreamReaderResult = streamReader.ReadToEnd();
                        streamReader.Close();
                    }
                }
            }
            catch (WebException exceptionWeb)
            {
                reponseServiceRequets = GetResponseException(exceptionWeb);
            }
            return(reponseServiceRequets);
        }
Пример #2
0
        // POST api/servicerequest
//        public Guid Post(RequestServiceRequest request)
        public HttpResponseMessage Post(HttpRequestMessage httpRequest, RequestServiceRequest request)
        {
            var serviceRequest  = new ServiceRequest(request.PhoneNumber, request.Location);
            var responseMessage = new ResponseServiceRequest()
            {
                Id = serviceRequest.Id
            };

            if (null == serviceRequest)
            {
                return(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }

            return(httpRequest.CreateResponse(HttpStatusCode.Created, serviceRequest));
        }
Пример #3
0
        public bool NotifyChangeDatabaseWcf(string table, string action, string id, string urlWcfHttp)
        {
            List <Tuple <String, String> > parameters = new List <Tuple <string, string> >()
            {
                { new Tuple <string, string>("tableName", table) },
                { new Tuple <string, string>("idKey", id) },
                { new Tuple <string, string>("action", action) },
            };

            ResponseServiceRequest response = ServiceRequestHttp.Post(urlWcfHttp, Reourcce, parameters, null, null, EnumsServiceRequestHttp.ContentTypeBody.Json);

            if (response?.HttpStatusCode == System.Net.HttpStatusCode.OK)
            {
                return(true);
            }
            return(false);
        }
Пример #4
0
        /// <summary>
        /// Metoto encargado de convertir cualquier respuesta de
        /// la libreria de consumo de servicios a un objeto de tipo response
        /// </summary>
        /// <returns></returns>
        internal static Response CastResponseService(ResponseServiceRequest ObjectResponse, String language)
        {
            ChangeLanguage(language);

            if (ObjectResponse.HttpStatusCode == HttpStatusCode.OK ||
                ObjectResponse.HttpStatusCode == HttpStatusCode.Created || ObjectResponse.HttpStatusCode == HttpStatusCode.Accepted)
            {
                return(JsonConvert.DeserializeObject <Response>(ObjectResponse?.StreamReaderResult));
            }
            else if (ObjectResponse.HttpStatusCode != null)
            {
                return(AjustResponseFromStatusCode(ObjectResponse.HttpStatusCode));
            }
            else
            {
                return(AjustResponseFromHttpStatus(ObjectResponse.HttpStatusWeb));
            }
        }
Пример #5
0
        private async Task <Boolean> SendAsync(string destinatiion, string message, string title, ConfigMsMFromContacto jsonConfig)
        {
            List <Tuple <String, String> > parameters = new List <Tuple <String, String> >
            {
                new Tuple <string, string>("usuario", jsonConfig.User),
                new Tuple <string, string>("clave", jsonConfig.Password),
                new Tuple <string, string>("numero", destinatiion),
                new Tuple <string, string>("mensaje", message),
                new Tuple <string, string>("nota", title)
            };
            ResponseServiceRequest serviceRequest = await ServiceRequestHttp.GetAsync(jsonConfig.PthBase, jsonConfig.ResourceBase, parameters, null);

            if (serviceRequest != null && serviceRequest.HttpStatusCode.HasValue && serviceRequest.HttpStatusCode.Value == HttpStatusCode.OK)
            {
                return(true);
            }

            return(false);
        }
Пример #6
0
        private Boolean Send(string destinatiion, string message, string title, ConfigMsMFromContacto jsonConfig, out string errorMessage)
        {
            errorMessage = "Not operation contacto provaider";
            List <Tuple <String, String> > parameters = new List <Tuple <String, String> >
            {
                new Tuple <string, string>("usuario", jsonConfig.User),
                new Tuple <string, string>("clave", jsonConfig.Password),
                new Tuple <string, string>("numero", destinatiion),
                new Tuple <string, string>("mensaje", message),
                new Tuple <string, string>("nota", title)
            };

            ResponseServiceRequest rsponseService = ServiceRequestHttp.Get(jsonConfig.PthBase, jsonConfig.ResourceBase, parameters, null);

            if (rsponseService.HttpStatusCode.HasValue && rsponseService.HttpStatusCode == HttpStatusCode.OK)
            {
                errorMessage = rsponseService.StreamReaderResult;
                return(rsponseService.StreamReaderResult.Contains("DATO CARGADO EXITOSAMENTE"));
            }


            return(false);
        }
Пример #7
0
        /// <summary>
        /// metodo encargado de realizar un post a un servicio web
        /// </summary>
        /// <param name="urlBase"></param>
        /// <param name="resourceBase"></param>
        /// <param name="parameters"></param>
        /// <param name="headers"></param>
        /// <param name="bodySerilizer"></param>
        /// <param name="contentType"></param>
        /// <returns></returns>
        private ResponseServiceRequest Post(string urlBase, string resourceBase, List <Tuple <string, string> > parameters, List <Tuple <string, string> > headers, String bodySerilizer, ContentTypeBody contentType)
        {
            ResponseServiceRequest reponseServiceRequets = null;

            try
            {
                if (!String.IsNullOrEmpty(resourceBase) && !String.IsNullOrEmpty(urlBase))
                {
                    if (urlBase[urlBase.Length - 1] == '/' || urlBase[urlBase.Length - 1] == '\\')
                    {
                        urlBase = urlBase.Remove(urlBase.Length - 1);
                    }


                    if (resourceBase[0] == '/' || resourceBase[0] == '\\')
                    {
                        resourceBase = resourceBase.Remove(0);
                    }



                    urlBase = String.Concat(urlBase, "/", resourceBase);

                    urlBase = AddParameterUrl(urlBase, parameters);


                    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlBase);

                    request.Method = MethodHttp.POST.ToString();

                    request.ContentType = GetContentTypeFromEnum(contentType);

                    if (headers != null && headers.Count > 0)
                    {
                        foreach (Tuple <String, String> header in headers)
                        {
                            request.Headers.Add(header.Item1, header.Item2);
                        }
                    }

                    if (String.IsNullOrEmpty(bodySerilizer))
                    {
                        request.ContentLength = 0;
                    }

                    if (bodySerilizer != null)
                    {
                        using (var streamWriter = new StreamWriter(request.GetRequestStream()))
                        {
                            streamWriter.Write(bodySerilizer);
                            streamWriter.Flush();
                            streamWriter.Close();
                        }
                    }


                    HttpWebResponse httpResponse = (HttpWebResponse)request.GetResponse();

                    reponseServiceRequets = new ResponseServiceRequest()
                    {
                        HttpStatusCode = httpResponse.StatusCode,
                    };

                    using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                    {
                        reponseServiceRequets.StreamReaderResult = streamReader.ReadToEnd();
                        streamReader.Close();
                    }
                }
            }
            catch (WebException exceptionWeb)
            {
                reponseServiceRequets = GetResponseException(exceptionWeb);
            }
            catch (UriFormatException)
            {
                reponseServiceRequets = GetResponseExceptionUrlFormat();
            }
            return(reponseServiceRequets);
        }