J'essaie de télécharger le contenu PDF du point de terminaison WebService qui vient comme binaire. Après décodage dans la base64, je joins le fichier décodé sur webview, dans lequel l'on a échoué à la recherche d'une erreur d'en-tête PDF affiche. P>
Est-ce que quelqu'un sait comment puis-je procéder pour corriger cette erreur? Est-ce que je manque de pas ici? P>
Merci. P>
3 Réponses :
J'ai eu cette erreur lors du développement de mon application qui a lu PDF Le problème est que le PDF n'existe pas à partir de votre appel. Les données binaires qui sont renvoyées sont la réponse d'erreur que votre service Web appelle. Par exemple, si je demande un document PDF à: p>
Matt, je peux voir que les données sont téléchargées et analysées dans Nsdata, peut-être qu'il pourrait être possible de ne pas décoder correctement, je n'ai plus cette erreur, mais cela ne montre rien sur le PDF. Juste Grey PDF, et j'ai écrit au PDF et j'ai essayé d'ouvrir PDF, mais cela me donne une erreur que le fichier PDF est endommagé.
@kforkarim: Il ne dit pas qu'il n'y a pas de données, il dit que les données sont la réponse d'erreur, et non le PDF que vous avez essayé d'obtenir. Assurez-vous que l'URL que vous essayez d'accéder est la bonne URL et que la ressource existe et est accessible (vous avez la permission, c'est accessible, etc.).
Essayez d'ajouter quelque chose comme puis chargez PDFDocument dans votre webview. p> ou jetez un oeil à la fabrication d'un ZoomPDFViewer personnalisé. Apple a un bon exemple sur http://developer.apple. com / bibliothèque / iOS / # samplecode / zoomingpdfviewer / introduction / intro.html c'est ce que j'ai fait comme je ne pouvais pas obtenir le PDFDocument de chargement correctement dans une vision Web. P> P>
Voici la solution si vous utilisez le service Web SAP:
Dans le système SAP, il existe une méthode pour convertir les données binaires (Xstring) en base64:
cl_http_utility => encod_x_base64
En utilisant HTTP, il est possible de transférer les données de base64.
Dans Xcode j'ai utilisé cette bibliothèque:
un lien alors: [webdisplay LoadData: B64DecData MIMEType: @ "Application / PDF" TexturingNameName: @ "utf-8" baseurl: nil]; Code> p> p>
À quoi ressemble votre code? Cette erreur se présente probablement si le PDF n'existe pas ou ne peut pas
mwinnn22, j'utilise la classe Base64 de blog.objectgraph.com/index.php/2010/04/20/... et simplement décoder la valeur du tableau et stocker dans Nsdata.