DenoでHTTPサーバーを作っている
この変更は議論のすえ結局deno_stdには入れられなかった
正確にいうと、議論が別に白熱することもなく賛同者が一人も現れなかったので白紙になりました
OSS、というかコミュニティ開発は政治だということがわかってしまったので、少し距離を取ることにした
自分のやりたいことがコミュニティの中で100%実現できるわけではないのは当たり前
でも、自分は好き勝手にコードを書いていたいし、コミュニティの発展よりも自分の思う美しさを実現したいので
コミュニティベースのOSSがコンサバティブになって分裂やYet Anotherなプロジェクトが生まれるのは普通
npmに対するyarnとか
nodeに対するio.jsとか
結果的にnpmはyarnのおかげで改善したわけだから意味はあった
別にそういうことを目指しているわけではない
けどdeno_stdのhttpモジュールはまだ全然機能が足りていないし、それについて不満を持っている人も何故か少ない
これはdenoを使ってhttpサーバーを立てようと思っている人も少ないからだろう
でも自分はHTTP完全に理解しろと自分に言い聞かせているのでDenoでHTTP/1.1の仕様に準拠したHTTPサーバーを作っていきたい そういうわけでdeno_stdから離れて自分でHTTPサーバーモジュールを作ることにしました
この試みが実りあるものになるようにという意味を込めてserver + harvest = servestという名前にしました
現在servestのapiはdeno_stdと互換性を持っている
code:ts
async function main() {
for await (const req of serve(0.0.0.0:8899)) {
await req.respond({
status: 200,
headers: new Headers({
"Content-Type": "text/plain"
}),
body: new TextEncoder().encode("hello")
});
}
}
main();