Maison >développement back-end >C++ >Comment télécharger des fichiers depuis l'API Web ASP.NET à l'aide d'AngularJS ?

Comment télécharger des fichiers depuis l'API Web ASP.NET à l'aide d'AngularJS ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-30 10:48:10458parcourir

How to Download Files from ASP.NET Web API using AngularJS?

Télécharger un fichier à partir de l'API Web ASP.NET à l'aide d'AngularJS

Introduction

Intégration des téléchargements de fichiers à partir de services Web dans les applications AngularJS peut poser des problèmes en raison des limitations du navigateur. Cet article explore une gamme de méthodes pour gérer les téléchargements de fichiers binaires dans AngularJS.

Méthode de téléchargement simple

Pour les téléchargements de fichiers de base, vous pouvez simplement déclencher une requête GET à l'aide d'un Chemin de fichier pris en charge par le navigateur :

$scope.downloadFile = function(downloadPath) {
    window.open(downloadPath, '_blank', '');
}

Téléchargement binaire Ajax Méthode

Pour effectuer des téléchargements de fichiers binaires via Ajax, vous pouvez utiliser ce script dans des navigateurs comme Chrome, Internet Explorer, Firefox et Safari. Notez que navigator.msSaveBlob ne fonctionne que séparément dans Internet Explorer 11.

$scope.downloadFile = function(httpPath) {
    // ... (Code omitted for brevity) ...
    try {
        // ... (Code omitted for brevity) ...
        if (navigator.msSaveBlob)
            navigator.msSaveBlob(blob, filename);
        else {
            // ... (Code omitted for brevity) ...
        }
    } catch (ex) {
        // ... (Code omitted for brevity) ...
    }

    if (!success) {
        // ... (Code omitted for brevity) ...
    }
}

Utilisation :

var downloadPath = "/files/sample.pdf";
$scope.downloadFile(downloadPath);

En-têtes de réponse de l'API Web requis

Pour garantir un téléchargement correct des fichiers, votre méthode API Web doit renvoyer ce qui suit headers :

  • x-filename : En-tête personnalisé contenant le nom du fichier.
  • content-type : En-tête MIME spécifiant le fichier format.

Conclusion

Cet article propose plusieurs approches pour gérer les téléchargements de fichiers à partir des services API Web dans les applications AngularJS. En fonction des capacités spécifiques du navigateur et des exigences de votre projet, choisissez la méthode qui correspond le mieux à vos besoins.

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!

Déclaration:
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