Comment télécharger des fichiers sans effort dans Laravel sans quitter la vue actuelle ?

Patricia Arquette
Libérer: 2024-11-06 10:05:03
original
881 Les gens l'ont consulté

How to Download Files Effortlessly in Laravel without Leaving the Current View?

Télécharger des fichiers sans effort dans Laravel avec Response::download

Pour résoudre le problème du téléchargement de fichiers de manière transparente sans quitter la vue actuelle, vous pouvez exploitez la méthode Response::download de Laravel. Voici comment résoudre vos soucis :

Problème 1 : Erreur de chemin de fichier

Le message d'erreur indique que le fichier "info.pdf" est introuvable dans le chemin spécifié" /public/télécharger/". Pour résoudre ce problème, assurez-vous que le fichier est présent à l'emplacement spécifié ou mettez à jour le chemin en conséquence dans le code.

Problème 2 : Navigation par bouton

Pour empêcher le téléchargement de la navigation vers une nouvelle vue, vous pouvez modifier l'itinéraire et les actions du contrôleur comme suit :

Itinéraire :

Route::get('/downloadfile', 'HomeController@downloadFile');
Copier après la connexion

Contrôleur :

public function downloadFile()
{
    // Set the file path
    $file = public_path() . '/download/info.pdf';

    // Create headers for content type
    $headers = ['Content-Type' => 'application/pdf'];

    // Download the file
    return response()->download($file, 'filename.pdf', $headers);
}
Copier après la connexion

Dans ce code mis à jour :

  • La route a été renommée « /downloadfile » pour plus de clarté.
  • La méthode du contrôleur utilise désormais public_path() pour obtenir le chemin complet du fichier.
  • Les en-têtes sont définis pour spécifier le type de fichier au format PDF.
  • L'assistant réponse() est utilisé pour générer la réponse de téléchargement sans accéder à une nouvelle vue.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!