Résoudre les problèmes de téléchargement et d'ouverture de PDF à l'aide d'Ajax
Dans le développement Web, permettre aux utilisateurs de télécharger et d'ouvrir des fichiers PDF via un appel Ajax peut être un défi. Explorons une solution qui résout ce problème.
Dans la classe d'action fournie (MyAction), un fichier PDF est généré et son flux est affecté à inputStream. Pour transmettre ce flux au navigateur, l'appel Ajax suivant peut être utilisé :
<code class="javascript">$.ajax({ type: "POST", url: url, data: wireIdList, cache: false, success: function(response) { var blob = new Blob([response]); var link = document.createElement('a'); link.href = window.URL.createObjectURL(blob); link.download = "<FILENAME_TO_SAVE_WITH_EXTENSION>"; link.click(); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert('Error occurred while opening fax template' + getAjaxErrorString(textStatus, errorThrown)); } });</code>
Cet appel Ajax mis à jour utilise les méthodes Blob() et createObjectURL() pour créer un fichier téléchargeable pour le navigateur. L'élément link est utilisé pour déclencher le processus de téléchargement et l'attribut download spécifie le nom de fichier sous lequel enregistrer le PDF.
En implémentant cette solution, votre appel Ajax téléchargera et ouvrira avec succès le fichier PDF généré dans le navigateur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!