Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Muat Turun Fail dari API Web ASP.NET Menggunakan AngularJS?

Bagaimana untuk Muat Turun Fail dari API Web ASP.NET Menggunakan AngularJS?

Linda Hamilton
Lepaskan: 2025-01-02 21:57:39
asal
276 orang telah melayarinya

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

Muat turun Fail daripada Kaedah API Web ASP.NET menggunakan AngularJS

Apabila membangun dengan AngularJS, selalunya perlu memuat turun fail daripada sumber luaran . Ini boleh dicapai dengan membuat permintaan HTTP GET kepada kaedah API Web yang mengembalikan fail yang diingini.

Melaksanakan Permintaan dalam AngularJS

Untuk memulakan proses muat turun dalam AngularJS, anda boleh menggunakan perkhidmatan $http untuk membuat permintaan HTTP GET kepada kaedah API Web anda. Berikut ialah contoh:

$scope.getthefile = function () {
  $http({
    method: 'GET',
    cache: false,
    url: $scope.appPath + 'CourseRegConfirm/getfile',
    headers: {
      'Content-Type': 'application/json; charset=utf-8'
    }
  }).success(function (data, status) {
    // Handle the downloaded file here
  }).error(function (data, status) {
    // Handle any errors that may occur
  });
}
Salin selepas log masuk

Memulangkan Fail daripada Kaedah API Web

Dalam kaedah API Web ASP.NET anda, anda perlu mengkonfigurasi respons untuk menunjukkan bahawa kandungan yang dikembalikan adalah fail untuk dimuat turun. Berikut ialah contoh:

[Authorize]
[Route("getfile")]
public HttpResponseMessage GetTestFile()
{
  HttpResponseMessage result = null;
  var localFilePath = HttpContext.Current.Server.MapPath("~/timetable.jpg");

  if (!File.Exists(localFilePath))
  {
    result = Request.CreateResponse(HttpStatusCode.Gone);
  }
  else
  {
    // Serve the file to the client
    result = Request.CreateResponse(HttpStatusCode.OK);
    result.Content = new StreamContent(new FileStream(localFilePath, FileMode.Open, FileAccess.Read));
    result.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("attachment");
    result.Content.Headers.ContentDisposition.FileName = "SampleImg";
  }

  return result;
}
Salin selepas log masuk

Mengendalikan Fail yang Dimuat turun dalam AngularJS

Terdapat dua kaedah yang boleh anda gunakan untuk mengendalikan fail yang dimuat turun dalam AngularJS:

  1. Mudah Muat turun:
$scope.downloadFile = function (downloadPath) {
  window.open(downloadPath, '_blank', '');
}
Salin selepas log masuk
  1. Ajax Binary Download:
$scope.downloadFile = function (httpPath) {
  $http.get(httpPath, { responseType: 'arraybuffer' })
  .success(function (data, status, headers) {
    // Handle the downloaded file here using the data
  }).error(function (data, status) {
    // Handle any errors that may occur
  });
}
Salin selepas log masuk

Ingat untuk mengkonfigurasi kaedah API Web anda untuk nyatakan pengepala respons yang sesuai, termasuk nama fail x dan jenis kandungan.

Dengan melaksanakan ini teknik, anda boleh memuat turun fail dengan lancar daripada kaedah API Web ASP.NET menggunakan AngularJS, memastikan pengalaman pengguna yang lancar dan berfungsi.

Atas ialah kandungan terperinci Bagaimana untuk Muat Turun Fail dari API Web ASP.NET Menggunakan AngularJS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan