http://www.playframework.com/documentation/2.1.1/ScalaHttpFiltersで説明されている単純なものに似たフィルターを作成しようとしていますが、リクエスト本文にアクセスする必要があります。以下のドキュメントには、「次に呼び出すと、Iteratee が返されます。必要に応じて、これを Enumeratee でラップして、いくつかの変換を行うことができます」と記載されています。Iteratee をラップする方法を見つけようとしているので、リクエスト本文をフィルター内の文字列として取得できるので、それもログに記録できます。
4250 次
3 に答える
7
最初に知っておく必要があるのは、フィルターが呼び出されたとき、要求本文はまだ解析されていないということです。それがあなたに与える理由ですRequestHeader
。body のタイプを調べ、それに応じて適切な body パーサーを呼び出す必要があります。
CSRF フィルターで本文の解析の例を見つけることができます (リクエスト本文の最初のバイトで CSRF トークンを検索できます)。
それが役に立てば幸い。
于 2013-07-24T10:24:09.267 に答える
-4
アクションにルーティングするコントローラー メソッドで、単純に呼び出します。
Map<String, String[]> params = request().queryString();
これにより、パラメーターのマップが取得され、そこで呼び出すことができます
params.get("someParam")[0]
パラメータを取得します (単一の値の場合)。パラメータがリストの場合、インデックスを無視すると、配列が返されます。
于 2013-07-24T01:32:29.397 に答える