mirror of
https://github.com/denoland/deno.git
synced 2025-09-27 12:49:10 +00:00
feat(ext/http): Rework Deno.serve using hyper 1.0-rc3 (#18619)
This is a rewrite of the `Deno.serve` API to live on top of hyper 1.0-rc3. The code should be more maintainable long-term, and avoids some of the slower mpsc patterns that made the older code less efficient than it could have been. Missing features: - `upgradeHttp` and `upgradeHttpRaw` (`upgradeWebSocket` is available, however). - Automatic compression is unavailable on responses.
This commit is contained in:
parent
d137501a63
commit
bdffcb409f
22 changed files with 2912 additions and 336 deletions
18
cli/bench/http/deno_http_serve_https.js
Normal file
18
cli/bench/http/deno_http_serve_https.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
|
||||
|
||||
const addr = Deno.args[0] ?? "127.0.0.1:4500";
|
||||
const [hostname, port] = addr.split(":");
|
||||
const { serve } = Deno;
|
||||
|
||||
function readFileSync(file) {
|
||||
return Deno.readTextFileSync(new URL(file, import.meta.url).pathname);
|
||||
}
|
||||
|
||||
const CERT = readFileSync("../../tests/testdata/tls/localhost.crt");
|
||||
const KEY = readFileSync("../../tests/testdata/tls/localhost.key");
|
||||
|
||||
function handler() {
|
||||
return new Response("Hello World");
|
||||
}
|
||||
|
||||
serve(handler, { hostname, port, reusePort: true, cert: CERT, key: KEY });
|
Loading…
Add table
Add a link
Reference in a new issue