Comment demander à Chrome de télécharger le PDF plutôt que la (pré) vue dans le navigateur?

9

J'ai un fichier PDF à télécharger par les utilisateurs sur mon site Web.

Existe-t-il un moyen de demander à Chrome de ne pas afficher le PDF dans le navigateur des utilisateurs lorsque l'utilisateur clique sur le lien vers le PDF, mais plutôt de télécharger le PDF dans le dossier de téléchargement des utilisateurs? Ou au moins demander à Chrome de demander à l'utilisateur s'il souhaite afficher le PDF dans le navigateur ou le télécharger (plutôt que de le visualiser automatiquement dans le navigateur)?

Merci :)

rassom
la source
Merci :) J'ai essayé la réponse la mieux notée ici, mais cela ne fonctionne pas :( wordpress.stackexchange.com/questions/5419/…
rassom
1
Je pense que cela ne fonctionnera pas pour Chrome car Chrome détecte le document au format PDF avant le chargement de htaccess et interagit avec le navigateur. Chrome va donc le charger au format PDF et ne pas y accéder en tant qu'action de téléchargement.
Peut-être qu'un javascript qui trouve le lien via un ID CSS spécifique pourrait être ajouté, puis lui ajouter un attribut de téléchargement ref w3schools.com/TAgs/att_a_download.asp . Si quelqu'un ici connaît assez javascript pour le faire, de l'aide serait appréciée,
rassom
1
@rassom, quel serveur Web utilisez-vous? L' Content-Dispositionen-tête mentionné dans le lien dans le premier commentaire est la bonne façon de procéder.
2015
1
Le Content-Disposition dans .htaccess ne fonctionne pas, il a déjà essayé.
rassom

Réponses:

11

Vous pouvez utiliser la downloadpropriété dans votre lien (ancre) comme ceci:

<a href="some/path/somefile.pdf" download target="_blank">download PDF file</a>

Cela forcerait le téléchargement dans les navigateurs qui le prennent en charge (Chrome, Firefox et Opera). Cependant, il n'est pas actuellement pris en charge dans IE ou Safari selon ce lien

Source: /programming/3802510/force-to-open-save-as-popup-open-at-text-link-click-for-pdf-in-html

Kristian
la source
1
Documentation pour l'attribut car il a des fonctionnalités intéressantes. C'est dommage qu'IE soit têtu. w3schools.com/tags/att_a_download.asp
Il est également si mauvais que Chrome limite l'attribut pour le même domaine et le même port :-( mais ils vous permettent de télécharger le fichier via "Enregistrer sous"
user1156544
2

Je ne sais pas si c'est possible grâce au code personnalisé du site Web. Pour autant que je sache, cela dépend totalement des paramètres utilisateur dans leur navigateur Chrome.

Fondamentalement, lorsque vous tapez: chrome: // plugins / , il répertorie vos plugins chrome et si l'utilisateur désactive le plugin appelé: Chrome PDF Viewer , alors seul chrome demandera de télécharger le PDF, sinon le PDF s'y ouvrira automatiquement.


la source
Merci, mais ne répond pas à la question de savoir comment, en tant que webmaster, je peux m'assurer que c'est le comportement des utilisateurs qui n'ont pas défini ce paramètre de préférences Chrome. Mais gentil à vous de répondre :-)
rassom
1

Cela peut être fait simplement au lieu de cliquer sur le fichier PDF, faites un clic droit dessus et sélectionnez "enregistrer le lien sous", puis Chrome commencera à télécharger le fichier PDF et assurez-vous de vérifier le format de fichier avant d'enregistrer l'adresse du lien, généralement ce serait .pdf mais sinon, écrivez manuellement .pdf après.

Chirag
la source
Merci, mais ne répond pas à la question de savoir comment, en tant que webmaster, je peux m'assurer que c'est le comportement des utilisateurs qui n'ont pas défini ce paramètre de préférences Chrome. Mais gentil à vous de répondre :-)
rassom