Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

std/http/mod.ts>Server#serve

Deno standard library
Go to Latest
The Standard Library has been moved to JSR. See the blog post for details.
method Server.prototype.serve
import { Server } from "https://deno.land/std@0.212.0/http/mod.ts";

Accept incoming connections on the given listener, and handle requests on these connections with the given handler.

HTTP/2 support is only enabled if the provided Deno.Listener returns TLS connections and was configured with "h2" in the ALPN protocols.

Throws a server closed error if called after the server has been closed.

Will always close the created listener.

import { Server } from "https://deno.land/std@0.212.0/http/server.ts";

const handler = (request: Request) => {
  const body = `Your user-agent is:\n\n${request.headers.get(
   "user-agent",
  ) ?? "Unknown"}`;

  return new Response(body, { status: 200 });
};

const server = new Server({ handler });
const listener = Deno.listen({ port: 4505 });

console.log("server listening on http://localhost:4505");

await server.serve(listener);

Parameters

listener: Deno.Listener

The listener to accept connections from.

Returns

Promise<void>