ホームページ > バックエンド開発 > C++ > AngularJS を使用して ASP.NET Web API からファイルをダウンロードするにはどうすればよいですか?

AngularJS を使用して ASP.NET Web API からファイルをダウンロードするにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-30 10:48:10
オリジナル
478 人が閲覧しました

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

AngularJS を使用した ASP.NET Web API からのファイルのダウンロード

概要

Web サービスからのファイル ダウンロードの AngularJS アプリケーションへの統合ブラウザの制限により問題が発生する可能性があります。この記事では、AngularJS でバイナリ ファイルのダウンロードを処理するためのさまざまな方法について説明します。

簡単なダウンロード方法

基本的なファイルのダウンロードの場合、次のコマンドを使用して GET リクエストをトリガーするだけです。ブラウザでサポートされているファイル パス:

$scope.downloadFile = function(downloadPath) {
    window.open(downloadPath, '_blank', '');
}
ログイン後にコピー

Ajax バイナリ ダウンロードメソッド

Ajax 経由でバイナリ ファイルのダウンロードを実行するには、Chrome、Internet Explorer、Firefox、Safari などのブラウザでこのスクリプトを使用できます。 navigator.msSaveBlob は 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) ...
    }
}
ログイン後にコピー

使用法:

var downloadPath = "/files/sample.pdf";
$scope.downloadFile(downloadPath);
ログイン後にコピー

必須の Web API 応答ヘッダー

ファイルを適切にダウンロードするには、Web API メソッド次のヘッダーを返す必要があります:

  • x-filename: ファイル名を含むカスタム ヘッダー。
  • content-type: を指定する Mime ヘッダーファイルformat.

結論

この記事では、AngularJS アプリケーション内の Web API サービスからのファイルのダウンロードを管理するためのいくつかの方法を説明します。特定のブラウザーの機能とプロジェクトの要件に基づいて、ニーズに最も適した方法を選択してください。

以上がAngularJS を使用して ASP.NET Web API からファイルをダウンロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート