Chrome+JSとQuinnを使ってQuicTransportを動かす最低限のサンプル。
ChromeとRustでUDP的なパケットをやり取りしたいけどまず動くところまで持っていくのが大変という人向けのものです。
- Chrome Origin TrialsでQuicTransportを有効にする
- 試験したいドメイン名で有効にすること
- Active Tokensの値をHTML側に貼らないとQUIC Transportが有効にならないので注意 - サンプルのものも自分で取得したTokenに差し替えてください
- index.htmlをどこか(試験したいドメイン名でアクセスできるところ)に置く
- index.html単体で動くのでそれだけ持っていく
- *.pemは外から見えるところに置かないようにしてください
- index.html単体で動くのでそれだけ持っていく
- index.htmlのquic接続先を試験したいドメインに書き換える
- 証明書の用意
- fullchain.pemとprivkey.pemを用意し、cargo run実行時のフォルダに配置する
- cargo buildでビルド
- cargo runで実行
- index.htmlにブラウザでアクセスする
- connectボタンを押すと、サーバーとクライアントでdatagramパケットのキャッチボールを行う
- 10から始まってデクリメントされていき0になったらコネクションclose
- 1秒sleep
- WebTransportとWebCodecsを組み合わせてビデオチャットを実装してみる
- ほぼまるごと参考にさせて頂きました
- Quinnのexamples
- 最低限の処理なので、ここから動くところまで行くのはなかなか苦労した
- Rustの正しい書き方が分かってません