/**
         * Recibe un obj Json con los parametros a enviar
         * @param paramsEncrypted
         * @return String Respuesta del WS
         * @throws ProtocolException
         * @throws MalformedURLException
         * @throws IOException
         */
        private string peticionWS(Dictionary <string, string> data, string endPoint)
        {
            var jsonStr = JsonConvert.SerializeObject(data, Formatting.None);

            Console.WriteLine("jsonStr: {0}\n" + jsonStr);

            //Encriptacion AES
            var    objAES        = new PagoFacilAES();
            string strEncriptada = objAES.Encrypt(jsonStr, llaveEncriptacion);

            Console.WriteLine("strEncriptada: {0}\n" + strEncriptada);

            //Peticiones al WS
            var wb       = new WebClient();
            var dataSend = new NameValueCollection();

            dataSend["idUsuario"] = idUsuario;
            dataSend["data"]      = strEncriptada;

            //URL url = new URL(endPoint);
            var response       = wb.UploadValues(endPoint, "POST", dataSend);
            var responseString = Encoding.Default.GetString(response);

            Console.WriteLine("Response String: {0}\n", responseString);
            var decodeJson = (string)JsonConvert.DeserializeObject(responseString);

            Console.WriteLine("Response JsonDecode: {0}\n", decodeJson);
            return(decodeJson);
        }
Exemplo n.º 2
0
        public static void Main(string[] args)
        {
            //Activar modo produccion
            //PagoFacilToken.ambienteProduccionActivo(true);

            //Inicializar Obj PagoFacilToken
            var objToken = new PagofacilToken(idUsuario, key);
            //Inicializar obj AES para desencriptar la respuesta obtenida
            var objAes = new PagoFacilAES();

            ////////////////////////
            //     Alta token     //
            ////////////////////////
            //Creando array asociativo, con parametros para AltaToken
            var data = new Dictionary <string, string>
            {
                { "idSucursal", idSucursal },
                { "idUsuario", idUsuario },
                { "nombre", "Juan" },
                { "apellidos", "Alvarado" },
                { "numeroTarjeta", "XXXXX" },
                { "cvt", "XXX" },
                { "mesExpiracion", "XX" },
                { "anyoExpiracion", "XX" },
                { "email", "*****@*****.**" },
                { "telefono", "XXXXX" },
                { "celular", "XXXXX" },
                { "calleyNumero", "anatole france 311" },
                { "colonia", "polanco" },
                { "municipio", "miguel hidalgo" },
                { "estado", "CDMX" },
                { "cp", "11000" }
            };

            //string respAlta = objToken.altaToken(data);
            //Console.WriteLine("RespAlta: {0}" + respAlta);
            //Console.WriteLine("RespAlta-Decode: {0}" + objAes.Decrypt(respAlta, key));

            ////////////////////////
            //     Cobro token    //
            ////////////////////////
            //Creando array asociativo, con parametros para AltaToken
            var dataCobro = new Dictionary <string, string>
            {
                { "idSucursal", idSucursal },
                { "idUsuario", idUsuario },
                { "token", "XXXXX" },
                { "monto", "59.99" },
                { "idPedido", "TestPf890a1" },
                { "param1", "----------" }
            };
            //string respCobro = objToken.cobroToken(dataCobro);
            //Console.WriteLine("RespCobro: {0}\n" + respCobro);
            //Console.WriteLine("RespCobro-Decode: {0}\n" + objAes.Decrypt(respCobro, key));

            ////////////////////////
            //   Baja de Token    //
            ////////////////////////
            var dataBaja = new Dictionary <string, string>
            {
                { "idSucursal", idSucursal },
                { "idUsuario", idUsuario },
                { "token", "XXXXX" },
                { "autorizacion", "XXXXXX" }
            };

            string respBaja = objToken.bajaToken(dataBaja);

            Console.WriteLine("RespBaja: " + respBaja);
            Console.WriteLine("RespBaja-Decode: " + objAes.Decrypt(respBaja, key));
        } //End Main