Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Delphi para la web (https://www.clubdelphi.com/foros/forumdisplay.php?f=51)
-   -   Servicio Web que retorna Un fichero pdf (https://www.clubdelphi.com/foros/showthread.php?t=87722)

keys 17-02-2015 16:37:38

Servicio Web que retorna Un fichero pdf
 
Hola a todos.

Estoy haciendo un cliente para poder acceder a un servicio web. Lo estoy haciendo con los componentes REST CLIENT, consigo que se conecte y que me devuelva la respuesta. El problema es que la respuesta es un documento pdf y no se como hacer con el componente TRESTRESPONSE para guardar este fichero pdf.

Alguien me puede ayudar?

Gracias.

Neftali [Germán.Estévez] 17-02-2015 17:32:17

¿Puedes poner cómo es la respuesta que te devuelve el componente?

keys 18-02-2015 10:05:23

Hola, lo primero gracias.

En la descripción del servicio solo pone que devuelve un pdf. Te pongo lo que devuelve en la propiedad Content del objeto TRESTRESPONSE. te pongo un trozo ya que supongo que es contenido del fichero pdf.

%PDF-1.4'#$A'%����'#$A'1 0 obj'#$A'[/PDF/ImageB/ImageC/ImageI/Text]'#$A'endobj'#$A'3 0 obj'#$A'<</Length 4 0 R/Filter/FlateDecode/N 3/Range[0 1 0 1 0 1 ]>>'#$A'stream'#$A'x���wTS�'#$16'�Ͻ7�P�'#$10'���khR'#2'H'#$D'�H�.*1'#9#$10'J��'#0'"6DTpDQ��'#8'2(��C� �"��

En la propiedad FContentType retorna 'appication/pdf'

Un Saludo.

Neftali [Germán.Estévez] 18-02-2015 10:25:46

¿Has probado a guardar eso como un PDF y a abrirlo?

keys 18-02-2015 10:40:25

He intentado hacer un copia pega de ese contenido pero me elimina caracteres al hacerlo y luego al intentar abrirlo me dice que el fichero no es correcto, me imagino que es por que lo trata como un string.

gracias.

Neftali [Germán.Estévez] 18-02-2015 12:52:17

O porque hay caracteres con otra codificación que se pierden en esa operación.
Intenta escribirlo en un fichero desde código con los métodos estandard (Append, Write,...) y luego a abrirlo.

keys 18-02-2015 13:23:45

Es lo que estoy intentando hacer, pero no consigo que me guarde bien todo el fichero. Seguire probando.

keys 18-02-2015 15:56:52

He visto que en la propiedad Header del objeto TRestREsponse devuelve lo siguiente:
Código PHP:

Date=Wed18 Feb 2015 14:38:14 GMT
Content
-Disposition=attachmentfilename="20150218-153815.pdf"
Content-Length=000000000084077
Keep
-Alive=timeout=20max=200
Connection
=close
Content
-Type=application/pdf 

Parece ser que retorna adjunto el fichero pdf. ¿Hay alguna forma de acceder a ese fichero adjunto?.

Gracias

Neftali [Germán.Estévez] 18-02-2015 16:42:24

Entonces prueba a "montar" la URL completa, a partir de la URL a la que haces la petición más ese nombre de fichero y entonces pruebas la descarga.
Para esto último Inet o las Indy deberían servir.

keys 20-02-2015 13:40:27

Hola a todos. He consiguido contactar con los que dan el servicio que por cierto es la agencia tribuataria y me dicen que el fichero pdf va en la respuesta y no lo almacenan en ningún sitio.


La franja horaria es GMT +2. Ahora son las 22:39:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi