キャラクターも仕様もキュートなJavaScriptランタイム「Deno」の新バージョン1.12で、WebSocketもネイティブ実装に対応とのことで、実験しました。

websock_test_chat on GitHub
クローンして、サーバー、クライアント2つ、計3つのターミナル上で動かしてみることができます。

Denoで、promptメソッドを使うとコンソールでの文字入力ができますが、他のスレッドは一切停止することに注意。 sleepを使って、送受信処理する時間を設けてます。

IPv6に対応するサーバーにするためには、hostnameを"::"と設定するのがポイント。 const port = 8081; const hostname = "::"; const listener = Deno.listen({ port, hostname });

wsclientにある接続先ホスト名を変更して、遠隔からのリアルタイム送受信ができる感を味わってみましょう!

Deno 1.13 で、ネイティブサーバーが --unstable オプションなしで動くようにする予定とのことで、楽しみです。

links
- https://zenn.dev/magurotuna/articles/deno-release-note-1-12-0Deno 1.12.0 がリリースされたので新機能や変更点の紹介
- deno/Releases.md at main · denoland/deno

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / RSS