summaryrefslogtreecommitdiff
path: root/cli/bench/deno_http_native.js
blob: d68f8ea81e1954c6158e4cee49f713a9783fbf25 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Copyright 2018-2021 the Deno authors. All rights reserved. MIT license.

const addr = Deno.args[0] || "127.0.0.1:4500";
const [hostname, port] = addr.split(":");
const listener = Deno.listen({ hostname, port: Number(port) });
console.log("Server listening on", addr);

const encoder = new TextEncoder();
const body = encoder.encode("Hello World");

for await (const conn of listener) {
  (async () => {
    const requests = Deno.serveHttp(conn);
    for await (const { respondWith } of requests) {
      respondWith(new Response(body))
        .catch((e) => console.log(e));
    }
  })();
}