unfiltered で 0.0.0.0 で listen するのは apply
仕事で テスト用の HTTPサーバを使うことがあったので、
unfiltered を使ってみたのですが
その際に起動するポートと listen するIPについての覚書。
サンプルだと 127.0.0.1 で起動するので
どうやったら 0.0.0.0 で listen する状態で起動できるのか 調べてみたのですが
といっても jetty の server 部分のソースを見ただけですが
Http オブジェクトは apply(port:Int) で 0.0.0.0 で起動するようです。
object Http { /** bind to the given port for any host */ def apply(port: Int): Http = Http(port, "0.0.0.0") /** bind to a the loopback interface only */ def local(port: Int) = Http(port, "127.0.0.1") /** bind to any available port on the loopback interface */ def anylocal = local(unfiltered.util.Port.any) }
- 127.0.0.1 の ランダムなポートで起動する場合
unfiltered.jetty.Http.anylocal.filter(echo).run()
- 127.0.0.1 の 指定したポートで起動する場合
unfiltered.jetty.Http.local(8888).filter(echo).run()
- 0.0.0.0 の 指定したポートで起動する場合
unfiltered.jetty.Http.apply(8888).filter(echo).run()