Node.jsでルートディレクトリからファイルを送信する方法


  1. ルートディレクトリからファイルを読み込む方法
  2. ファイルをHTTPレスポンスとして送信する方法
  3. シンプルで簡単なコード例

まず、Node.jsでルートディレクトリからファイルを読み込むには、fsモジュールを使用します。以下は、fsモジュールを使ってファイルを読み込む基本的なコード例です:

const fs = require('fs');
const path = require('path');
const filePath = path.join(__dirname, 'filename.txt'); // ファイルのパスを作成
fs.readFile(filePath, 'utf8', (err, data) => {
  if (err) {
    console.error(err);
    return;
  }
  console.log(data); // ファイルの内容を表示するなどの処理を行う
});

上記の例では、fs.readFileメソッドを使用してファイルを非同期に読み込んでいます。__dirnameは現在のスクリプトのディレクトリパスを表します。path.joinメソッドを使用して、ルートディレクトリとファイル名を結合して、ファイルの完全なパスを作成します。

次に、ファイルをHTTPレスポンスとして送信する方法を説明します。Node.jsでは、HTTPサーバーを作成して、ファイルをレスポンスとして送信することができます。以下は、Expressフレームワークを使用した簡単な例です:

const express = require('express');
const app = express();
app.get('/file', (req, res) => {
  const filePath = path.join(__dirname, 'filename.txt');
  res.sendFile(filePath); // ファイルをレスポンスとして送信する
});
app.listen(3000, () => {
  console.log('Server started on port 3000');
});

上記の例では、app.getメソッドを使用して、/fileエンドポイントにGETリクエストがあった場合にファイルを送信します。res.sendFileメソッドを使用して、ファイルをレスポンスとして送信します。

以上がNode.jsでルートディレクトリからファイルを送信する方法の基本的な説明とコード例です。これを参考にして、自身のプロジェクトに適した方法を見つけてください。