public HttpResponseMessage LLamarApi(WebApis webApi, TipoPeticion tipoPeticion, string strControlador)
        {
            HttpResponseMessage result = null;
            string strUri = string.Empty;

            switch (webApi)
            {
            case WebApis.ApiSancionados:
                strUri = this.UriApiSancionados;
                break;

            case WebApis.UriApiSSO:
                strUri = this.UriApiSSO;
                break;

            default:
                strUri = string.Empty;
                break;
            }


            using (var client = new HttpClient())
            {
                Task <HttpResponseMessage> resultTask = null;
                client.BaseAddress = new Uri(strUri);

                resultTask = client.GetAsync(strControlador);

                resultTask.Wait();
                result = resultTask.Result;
            }

            return(result);
        }
Beispiel #2
0
        /// <summary>
        /// Método que Traduce los Tipos de Petición
        /// </summary>
        /// <param name="tipoPeticion">Enumeración de Tipo de Petición</param>
        /// <returns></returns>
        private string traduceTipoPeticion(TipoPeticion tipoPeticion)
        {
            //Declarando Objeto de Retorno
            string tipo = "";

            //Evaluando Tipo de Petición
            switch (tipoPeticion)
            {
            case TipoPeticion.XML:
                tipo = "xml";
                break;

            case TipoPeticion.JSON:
                tipo = "json";
                break;
            }

            //Devolviendo Resultado Obtenido
            return(tipo);
        }
Beispiel #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="url_parametros"></param>
        /// <param name="tipoPeticion"></param>
        /// <returns></returns>
        private RetornoOperacion obtieneRespuestaPeticion(string url_parametros, TipoPeticion tipoPeticion)
        {
            //Declarando Objeto de Validación
            RetornoOperacion result = new RetornoOperacion();

            //Creando Petición Web
            this._peticionWeb = (HttpWebRequest)WebRequest.Create(url_parametros);

            //Configurando Petición Web
            this._peticionWeb.ContentType = "application/" + traduceTipoPeticion(tipoPeticion);
            this._peticionWeb.Method      = "POST";

            try
            {
                //Inicializando Petición
                this._peticionWeb.GetRequestStream();

                //Obteniendo Respuesta de la Petición
                this._respuestaWeb = (HttpWebResponse)this._peticionWeb.GetResponse();

                //Leyendo Respuesta
                using (StreamReader streamReader = new StreamReader(this._respuestaWeb.GetResponseStream()))
                {
                    //Escribiendo Respuesta
                    result = new RetornoOperacion(streamReader.ReadToEnd(), true);
                }
            }
            catch (Exception e)
            {
                //Instanciando Excepción
                result = new RetornoOperacion(e.Message);
            }

            //Devolviendo Resultado Obtenido
            return(result);
        }