deno.com

HTTP 伺服器:路由

在 Github 上編輯

一個 HTTP 伺服器的範例,根據傳入的 URL 處理具有不同回應的請求。

URL 模式可用於匹配請求 URL。它們可以包含命名群組,可用於提取 URL 的部分內容,例如書籍 ID。
const BOOK_ROUTE = new URLPattern({ pathname: "/books/:id" });

function handler(req: Request): Response {
將傳入的請求與 URL 模式進行匹配。
  const match = BOOK_ROUTE.exec(req.url);
如果存在匹配項,則提取書籍 ID 並傳回回應。
  if (match) {
    const id = match.pathname.groups.id;
    return new Response(`Book ${id}`);
  }
如果沒有匹配項,則傳回 404 回應。
  return new Response("Not found (try /books/1)", {
    status: 404,
  });
}
若要在預設埠上啟動伺服器,請使用處理常式呼叫 `Deno.serve`。
Deno.serve(handler);

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

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

在 Deno Deploy playground 中試用此範例

部署

您找到需要的資訊了嗎?

隱私權政策