0

私はモバイルアプリ開発者で、ウェブアプリは初めてです。MeanJS スタックを使用して、Web アプリでファイルのアップロードとダウンロードを実装しようとしています。multer プラグインを使用してファイルをサーバーにアップロードしました。多くのグーグル検索の後、ファイルをアップロードディレクトリにアップロードして保存する Multer の使用に成功しました。今、同じダウンロードを実装しようとしていますが、これを行う考えがありません。私は2つの方法に従いました:

  1. <a target="_self" href="/uploads/{{eachDocument.modifiedFileName}}" download="{{eachDocument.fileName}}">{{eachDocument.fileName}}</a>
  2. http://expressjs.com/api.html#res.downloadに示されているように、エクスプレスサーバーコントローラーでルートを使用しました

方法 1 のアプリケーションを使用すると、「ファイルではありません」というエラーでファイルがダウンロードされることはありません。これは、アップロードがパブリック ディレクトリではないためです。

方法 2 を使用すると、未加工のファイル コンテンツを取得できますが、ファイルを保存する方法がわかりません。

multerを使用してアップロードされたアップロードディレクトリに保存されているファイルのダウンロードを実装する方法を教えてください。

ありがとう

4

1 に答える 1

1

@Sridhar Chidurala、サーバーとビューコントローラーの私のコードを見つけてください:

サーバーコントローラーに次のコードを使用しています:

var file = __dirname + "/../../" + results.filePath;
 res.download(file, results.filename, function (err) {
     if (err) {
     } else {
     }
  });

ビューコントローラーで、いくつかのデータを投稿し、データに基づいてファイルデータをビューに取得します。

$http.post(requestString, reqObject).
  success(function (response) {
    // **I get the file data here**
    console.log("success response : " + JSON.stringify(response));
   }).error(function (response) {
     console.log("error response : " + JSON.stringify(response));
   });
于 2015-04-21T00:54:13.687 に答える