問題タブ [apache-httpclient-5.x]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Apache HttpClient 5.1 で POST のリダイレクトに従う方法
Apache HttpClient 5.1で POST として POST リクエストのリダイレクトを追跡する方法を探しています
デフォルトでは、リダイレクトが発生するGETリクエストのみが自動的に追跡されます。POSTリクエストが HTTP 301 (Moved Permanently) または 302 (Moved Temporarily) で応答された場合、リダイレクトは自動的には実行されません。これは、HTTP RFC 2616で指定されています。
ただし、POST 要求を POST としてリダイレクトする必要がある場合があります。このような場合、厳密な HTTP 仕様を緩和するためにデフォルトの動作を変更する必要があります。
Apache HttpClient 4.5では、 DefaultRedirectStrategyをLaxRedirectStrategyに置き換えるか、独自のRedirectStrategyインターフェイスのカスタム実装に置き換えることで、これを簡単に実現できます。例:
- Apache HttpClient 4.5はPOSTリクエストをGETリクエストにリダイレクトします
- https://www.baeldung.com/httpclient-redirect-on-http-post
Apache HttpClient 5.1では、これは機能しなくなりました。RedirectStrategyインターフェイスが変更され、 getRedirectメソッドが含まれなくなりました。LaxRedirectStrategyの実装も削除されました。
Apache HttpClient 5.1でデフォルトの POST リダイレクト動作をオーバーライドする方法はありますか? HttpClient 4.5と同様または単純ですか?