2009-08-24 8 views
1

私は1-Nマシンの1つにリクエストをリダイレクトするBig IPに連絡するためにApache HttpClient 3.xを使用しています。私はN台のマシンのどれが実際にリクエストを受け取ったのか知る必要があり、私はこの情報を得る方法がわかりません。私は運のないレスポンスヘッダーを見ました。だから、この情報が実際にどこに提供されているのだろうか?追加のメタデータを取得するために使用できるヘルパー/ユーティリティクラスはありますか?Apache HttpClientを使用して応答サーバー名/ ipを取得できますか?

ありがとうございました。

+0

に独自のヘッダーIDを挿入することができ、あなたはあなたの要求を処理している1-Nサーバの制御にはありますか? –

+0

個人的に私たちのグループではありませんが、それはすべて内部的なものなので、レスポンスに何かを追加するようリクエストすることができます。私は可能ならばそれを回避する方法があるかどうかを見ていたと思います。 –

+0

私は応答ヘッダーがあなたの唯一のオプションAFAIKになると思う。 –

答えて

1

リクエストがリダイレクトされ、新しい場所が必要な場合は、メソッドのsetFollowRedirects(false)をリダイレクトして処理する必要があります。

リクエストを送信した後、302の場合はgetStatusCode()、新しいアドレスの場合はgetResponseHeader("Location")をチェックしてください。アドレスをsetURI()で変更し、再度送信してください。

+0

うわー、それはおそらく動作するでしょう。私が責任をリダイレクトすることを継承したいのかどうかは分かりませんが、他の誰かが何か良いものを考え出すことができない限り、私はこれを1日か2日で回答にします。 –

関連する問題