Play FrameworkによってGETリクエストでバイナリデータを取得する必要があります。これは、BitTorrentクライアントからinfo_hashを取得するために使用されます。Play FrameworkでバイナリHTTP GETパラメータを取得する
私はこのようにそれを得る:0x3fのに置き換え
byte[] infoHash = params.get("info_hash").getBytes("ISO-8859-1")
残念ながら、すべての非ASCII記号。
P.S.私はHttp.Request.current()。クエリーストリングからURLエンコードされたパラメータを取得できますが、これは悪い考えです。
更新:私はメソッドをオリジナルでのようにハードコードされたUTF-8の代わりにパラメータでISO-8859-1を使用しています。しかし、私はフレームワークソースを編集したくないので、より良い方法を探しています。 http://wiki.theory.org/BitTorrent_Tracker_Protocolによると
なぜGETではなくPOSTを使用しますか? – fmucar
BitTorrentクライアントはアナウンサーに対してのみGET要求を使用します。 – lafayette
play.data.parsing.UrlEncodedParser.parseメソッドを使用する必要がありますが、このクラスではUTF-8の代わりにASCIIエンコーディングを使用してください。 – lafayette