C sharp - WebBrowser abrir documento PDF con método Post y luego guardar el archivo

 
Vista:

WebBrowser abrir documento PDF con método Post y luego guardar el archivo

Publicado por Black (5 intervenciones) el 31/03/2018 21:53:28
Estimados.
Queria hacer una pregunta ya que tengo la siguiente duda me encuentro trabajando con C# necesito extraer unos documentos PDF.
Estos documentos PDF se genera en una URL. Esta URL envía por método POST el siguiente parámetro dtaDoc. Este parámetro datDoc envía datos encriptado. Para que formulario que esta en la URL recibe el valor del parámetro datDoc genera un documento PDF.
Ahora me encuentro utilizando WebBrowser el cual paso por método Post el campo y valor encriptado. Me genera el documento PDF. El segundo paso almacenar ese documento PDF en directorio en mi computadora.
Trato de almacenar este archivo por medio de WebBroser.FileDownload pero me encuentro con el siguiente problema ya que tengo que tener dos url el path de origen del documento y el segudo Path es la destino donde se almacenan el documento PDF en mi maquina Local. Pero el path de origen no lo alcanzo a mueve este parámetro dtaDoc ya que esta con el método. Pero no puedo hacer que pasarle el parámetro con valor encripta para así generar el documento y copiarlo.
Estoy tratato de general el levantar el generar el documento el con el campo dtaDoc con Webclient al cual genero paso la URL con parámetro dtaDoc con el valor encripta para luego realizar un File.WriteAllBytes para almacenar el archivo Bynario y me lo descargue en mi computadora pero cuando abro el documento el PDF que genero con el Webclient me dice que el archivo esta corrupto.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
String nombre = "Causar-" + DateTime.Now.Hour + DateTime.Now.Minute + DateTime.Now.Second + ".pdf";
                                                            string postData = "dtaDoc=" + strDocumento;
                                                            System.Text.Encoding encoding = System.Text.Encoding.UTF8;
                                                            byte[] bytes = encoding.GetBytes(postData);
 
                                                            Console.Write("URL Documento " + "https://midominio/" + strURL + " dtaDoc=" + strDocumento  + "\r\n");
                                                            webDocumento.Navigate("https://midominiol/" + strURL, string.Empty, bytes, "Content-Type: application/x-www-form-urlencoded");
                                                          //  webDocumento.FileDownload("https://midominio/" + strURL, "C:\\Temporal\\" + nombre);                                                       
                                                            //byte[] bte = webDocumento
                                                            using (WebClient client = new WebClient())
                                                            {
                                                                var reqparm = new System.Collections.Specialized.NameValueCollection();
                                                                reqparm.Add("dtaDoc", strDocumento);
                                                              //  byte[]
                                                                byte[] responsebytes = client.UploadValues("https://oficinajudicialvirtual.pjud.cl/" + strURL, "POST", reqparm);
                                                                string responsebody = Encoding.UTF8.GetString(responsebytes);
                                                                File.WriteAllBytes("C:\\Temporal\\" + nombre , responsebytes);
                                                                client.Dispose();
                                                            }
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder