Unfiltered 0.6.8 (Jetty コネクタを使用) を使用していますが、パス セグメントが URL デコードされないという奇妙な動作に遭遇しました。
次のコードは、最小限のテスト ケースです。
import unfiltered.request._
import unfiltered.response._
object Test extends App with unfiltered.filter.Plan {
def intent = {
case reg @ Path(Seg(test :: Nil)) =>
println(test)
ResponseString(test)
}
unfiltered.jetty.Http.local(8080).filter(Test).run()
}
クエリを実行すると、クライアント側とサーバー側の両方でhttp://localhost:8080/some_string
期待される結果が得られます。some_string
一方、期待していたよりも、クライアントとサーバーの両方でhttp://localhost:8080/some%20string
利回りが得られます。some%20string
some string
この問題を回避するのは簡単ですが ( java.net.URLDecoder#decode(String, String)
)、次の点について知りたいです。
- 些細なことを忘れてバカにしてる。
- unfiltered には、面倒な作業を自動的に処理するためのキットがあります。
- 上記のいずれにも当てはまらない場合、この動作には特定の理由がありますか、それともバグ レポートを提出する必要がありますか?
補足として、unfiltered
タグは存在せず、それを作成するのに十分な評判がありません。そのため、デフォルトでscala
.