mirror of
https://github.com/denoland/deno.git
synced 2025-10-02 23:24:37 +00:00
feat(ext/flash): split upgradeHttp into two APIs (#15557)
This commit splits `Deno.upgradeHttp` into two different APIs, because the same API is currently overloaded with two different functions. Flash requests upgrade immediately, with no need to return a `Response` object. Instead you have to manually write the response to the socket. Hyper requests only upgrade once a `Response` object has been sent. These two behaviours are now split into `Deno.upgradeHttp` and `Deno.upgradeHttpRaw`. The latter is flash only. The former only supports hyper requests at the moment, but can be updated to support flash in the future. Additionally this removes `void | Promise<void>` as valid return types for the handler function. If one wants to use `Deno.upgradeHttpRaw`, they will have to type cast the handler signature - the signature is meant for the 99.99%, and should not be complicated for the 0.01% that use `Deno.upgradeHttpRaw()`.
This commit is contained in:
parent
452df99222
commit
f3bde1d53b
6 changed files with 69 additions and 26 deletions
|
@ -109,7 +109,6 @@
|
|||
serveHttp: __bootstrap.http.serveHttp,
|
||||
resolveDns: __bootstrap.net.resolveDns,
|
||||
upgradeWebSocket: __bootstrap.http.upgradeWebSocket,
|
||||
upgradeHttp: __bootstrap.http.upgradeHttp,
|
||||
kill: __bootstrap.process.kill,
|
||||
addSignalListener: __bootstrap.signals.addSignalListener,
|
||||
removeSignalListener: __bootstrap.signals.removeSignalListener,
|
||||
|
@ -154,5 +153,7 @@
|
|||
spawn: __bootstrap.spawn.spawn,
|
||||
spawnSync: __bootstrap.spawn.spawnSync,
|
||||
serve: __bootstrap.flash.serve,
|
||||
upgradeHttp: __bootstrap.http.upgradeHttp,
|
||||
upgradeHttpRaw: __bootstrap.flash.upgradeHttpRaw,
|
||||
};
|
||||
})(this);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue