2016-12-15 8 views
0

サーバー(RESTサービス)は、それが実際にangularjs 1.2(またはJavaScript)で開く名前を付けて保存]ダイアログとHTML 4倍

/project/tmporaryFiles/file.abc 

(のように生成されたファイルの何かへのリンクである応答を送信するときに、私はAJAX呼び出し午前ファイル拡張子もカスタマイズされています)これは単なるテキストファイルです。 $window.openを使用すると、ブラウザのテキストファイルが開き、テキストが表示されます。私はユーザーのユーザーがブラウザで表示するのではなくファイルを保存できるようにsaveasダイアログボックスを開きたいと思います。私はstackoverflowの複数のスレッドを試したが、解決策を見つけることができませんでした。ほとんどのソリューションはHTML5のためのもので、アンカーのダウンロード属性です.HTML4xでは利用できません。 私が見つけようとしている解決策の1つは、レスポンスリンクでBlobを作成することですが、できないことです。

また、ファイルは、ユーザーによるデータ処理と入力に基づいて100MBを超える場合もあります。

答えて

1

私はあなたがHTML5 download属性を使用せずにダウンロードを強制したい、あなたはレスポンスヘッダにContent-Dispositionを設定する必要があります。

これは、クライアント側ではなくサーバー側で実行できます。

+0

はい、それはできますが、私の現在の問題は、サーバー側のコーディングが含まれていないようにダウンロードするサーバー上の単なる単純なファイルであるということです。あなたのブラウザでSave Target Asを押したときのように。私たちはSave As As thingをjavascriptでプログラムで実行できますか? – Riaz

+0

Yaserさん、ありがとうございました。ダウンロードが必要なファイル拡張子にカスタマイズされたフィルタを使用して、サーバー側で行っています。 SIMPLEファイルにアクセスするたびに、HeaderFilterはレスポンスのヘッダーにコンテンツの配置を配置します。 – Riaz

関連する問題