Multerを使用したファイルのアップロード方法


  1. Multerのインストール まず、プロジェクトのルートディレクトリで以下のコマンドを実行して、Multerをインストールします。
npm install multer
  1. ExpressとMulterの設定 次に、ExpressアプリケーションでMulterを使用するための設定を行います。以下のようなコードをapp.jsまたはserver.jsファイルに追加します。
const express = require('express');
const multer = require('multer');
const app = express();
// ファイルのアップロード先のディレクトリを指定
const upload = multer({ dest: 'uploads/' });
// ファイルのアップロードエンドポイント
app.post('/upload', upload.single('file'), (req, res) => {
  // ファイルのアップロードが成功した場合の処理
  res.send('ファイルがアップロードされました。');
});
app.listen(3000, () => {
  console.log('サーバーが起動しました。');
});

上記の例では、uploads/ディレクトリにファイルがアップロードされます。upload.single('file')は、1つのファイルをアップロードする際に使用されるミドルウェアです。フォームからのファイルアップロードリクエストが/uploadエンドポイントに送信されると、指定されたディレクトリにファイルが保存されます。

  1. クライアント側のフォーム作成 ファイルのアップロードにはクライアント側でフォームを作成する必要があります。以下は、HTMLフォームの例です。
<form action="/upload" method="POST" enctype="multipart/form-data">
  <input type="file" name="file">
  <input type="submit" value="アップロード">
</form>

上記の例では、enctype="multipart/form-data"属性を指定しています。これにより、ファイルのアップロードが可能になります。

以上が、Multerを使用してファイルをアップロードするための基本的な手順です。上記のコード例を参考にして、自分のプロジェクトに適用してみてください。必要に応じて、ファイルのバリデーションやエラーハンドリングの追加など、さらなるカスタマイズも可能です。