0

application/x-www-form-urlencoded メディア タイプを使用して Http ポスト リクエストの本文を読み込もうとしていますが、すべて失敗しました。

リクエストの本文を使用して計算したハッシュ (ヘッダーとしてポストされる) とハッシュを比較することにより、通信中にリクエストが変更されなかったことを確認する必要があります。

問題は、サーバーに到達するリクエストに、parameterMap だけの本体がないことです。フィルターを使用して初期段階でリクエストをインターセプトしようとしますが(実際にはリクエストの本文をキャッシュするために使用します)、パラメーターマップだけの本文はまだありません。

このマップを処理してハッシュを計算するための文字列を取得しようとしましたが、websphere はパラメーターを並べ替え、ハッシュが一致しませんでした。そのため、parameterMap に解析される前に、プレーン テキストの本体を読み取ることが最善の解決策だと思います。

私のログでこれを見ることができるので、リクエストに本文があると確信しています:

****** METHOD: POST
****** URI: https://localhost/echo
****** ENTITY <echo2=c&echo2=d&aa=e&aa=f&echo=a&echo=b&echo=a,{HEADERS...}>
Writing [echo2=c&echo2=d&aa=e&aa=f&echo=a&echo=b&echo=a] as "application/x-www-form-urlencoded" using [org.springframework.http.converter.StringHttpMessageConverter@a7c98f]
4

0 に答える 0