comment télécharger des fichiers à réagir js
- Je recevoir url du fichier de réponse, à partir de l'api. lorsque l'utilisateur clique sur le bouton de téléchargement, le fichier doit être téléchargé sans l'ouverture de l'aperçu de fichier dans un nouvel onglet. Comment parvenir à réagir js?
- Le déclenchement de téléchargement du navigateur de front-end n'est pas un moyen fiable de le faire. Vous devez créer d'extrémité que lorsqu'on l'appelle, va fournir la réponse correcte en-têtes, ce qui déclenche le téléchargement du navigateur. Avant la fin de code ne peut pas tout faire. La "télécharger" attribut par exemple, il suffit d'ouvrir le fichier dans un nouvel onglet selon le navigateur.
- De ma compréhension, vous dites qu'il peut être atteint par l'api rest avec les bons en-têtes de réponse, est-il juste?
- Oui. Je ne sais pas comment joindre un lien dans un commentaire, alors je l'ai posté une réponse.
Vous devez vous connecter pour publier un commentaire.
Déclenchement de téléchargement du navigateur de front-end n'est pas fiable.
Ce que vous devez faire est de, créer un point de terminaison que lorsqu'on l'appelle, va fournir la réponse correcte en-têtes, ce qui déclenche le téléchargement du navigateur.
Frontal code ne peut faire beaucoup. La "télécharger" attribut par exemple, il suffit d'ouvrir le fichier dans un nouvel onglet selon le navigateur.
Les en-têtes de réponse vous avez besoin de regarder sont probablement
Content-Type
etContent-Disposition
. Vous devriez vérifier cette réponse pour des explications plus détaillées.Ce n'est pas lié à Réagir. Toutefois, vous pouvez utiliser le
download
attribut sur l'ancre<a>
élément de dire au navigateur de télécharger le fichier.Ce n'est pas pris en charge sur tous les navigateurs: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a
Si vous utilisez Réagir Routeur, utilisez ceci:
Où
/files/myfile.pdf
est à l'intérieur de votrepublic
dossier.navigateurs sont assez intelligents pour détecter le lien et de le télécharger directement en cliquant sur une balise d'ancrage sans l'aide de la télécharger attribut.
après l'obtention de votre lien de fichier à partir de l'api, il suffit d'utiliser la plaine de javascript par la création de balise d'ancrage et le supprimer après avoir cliqué sur elle dynamiquement immédiatement à la volée.
HTML télécharger attribut pour spécifier que l'objectif pourra être téléchargé lorsqu'un utilisateur clique sur le lien hypertexte.
Exemple de code:
Sortie:
Télécharger l'Image >>