deno.com

HTTP 伺服器:伺服檔案

在 Github 上編輯

一個伺服檔案的 HTTP 伺服器範例。

匯入實用方法,用於伺服具有 MIME 類型的檔案。
import { serveDir, serveFile } from "jsr:@std/http/file-server";
這裡我們啟動一個簡單的伺服器。
Deno.serve((req: Request) => {
從 URL 取得路徑 (例如 example.com/whatever -> /whatever)。
  const pathname = new URL(req.url).pathname;

  if (pathname === "/simple_file") {
在最基本的情況下,我們可以僅使用請求物件和檔案路徑呼叫此函式。
    return serveFile(req, "./path/to/file.txt");
  }

  if (pathname.startsWith("/static")) {
我們也可以使用 serveDir 實用方法伺服整個目錄。預設情況下,它伺服當前目錄,但可以使用 "fsRoot" 選項更改此設定。在我們不在頂層伺服目錄的情況下,我們可以使用 "urlRoot" 選項來剝離 URL 的開頭。
    return serveDir(req, {
      fsRoot: "public",
      urlRoot: "static",
    });
  }

  return new Response("404: Not Found", {
    status: 404,
  });
});

使用 Deno CLI 在本機執行此範例

deno run --allow-net --allow-read https://deno-docs.dev.org.tw/examples/scripts/http_server_files.ts

你找到需要的資訊了嗎?

隱私權政策