Maison >développement back-end >C++ >Comment télécharger des fichiers depuis 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 :
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!