2017-11-15 8 views
0

私はアッカのHTTPを使用して、次のHTTPリクエスト持っています:Akka HTTP - 生の(URLデコードされていない)リクエストURLを取得する方法は?

http://www.example.com?p1=1&p2=2&p3=http://www.example.net?a=1&b=2%203 

をフル生(いないURLデコード)リクエストURLを取得するアッカHTTPでの方法はありますか?そのままの生のリクエストURLをそのまま取得したいと思います。

http://www.example.com?p1=1&p2=2&p3=http://www.example.net?a=1&b=2%203 

「p3 =」の後にすべてを取得します。

答えて

1

コンフィグレーション設定をakka.http.server.raw-request-uri-headerに設定すると、ローリクエストURIがRaw-Request-URIという名前のヘッダーの値として含まれます。すなわち

は、あなたapplication.confに、次のように設定します。

akka.http.server.raw-request-uri-header = on 

そしてRaw-Request-URIヘッダからの生のリクエストURIを取得します。 documentationから

時にはそれは、任意のエスケープを適用するかを解析することなく、着信URIの「生の」値を得るために必要とされてもよいです。このユースケースはまれですが、しばらくの間毎回表示されます。 akka.http.server.raw-request-uri-headerフラグをオンにすることによって、Akka HTTPサーバー側で「raw」リクエストURIを取得することができます。有効にすると、各リクエストにRaw-Request-URIヘッダーが追加されます。このヘッダーは、使用された元の生のリクエストのURIを保持します。たとえば、参照設定を確認してください。

関連する問題