0

最初のページに Cookie(a) を設定するサイトがある場合、フォームに入力し、同じ Cookie(a) を 2 ページ目に送信する必要があります。この 2 ページ目で別のフォームに入力すると、3 ページ目に移動します。Cookie(a) を送信すると、サイトは別の Cookie(b) を設定し、最後のページにリダイレクトします。ただし、最後のページを表示するには、両方の Cookie (a と b) が必要です。
Java で最初のページへの接続を開き、応答ヘッダーから Cookie(a) を取得し、それを requestProperty として 2 番目のページに追加すると、既に接続されているため、URLConnection.write() ができなくなります。この新しい POSTDATA の書き込みは、ページ 2 を埋めて 3 番目に進むために必要です。これで、別の URLConnection を作成できます >> Cookie を requestProperty として追加 >> 接続します。
Cookie(a) は 1 つのセッションに対してのみ有効であるため、2 番目の接続を開くと、Cookie は正しくなくなります。また、適切な Cookie を page3 に送信しないと、.getHeaderFields.get("Set-Cookie") に対して「null」が返されます。
それで、その秒のCookie(b)を取得する方法を知っている人はいますか?
-おそらく、同じセッションまたは何かを維持/復元/再開することによって..?...

これが明確であることを願っています。それ以外の場合は、説明を求めてください。ありがとう!

4

2 に答える 2

0

Java 5 以降では、関連するすべての Cookie をマップに格納する cookiemanager があります。Cookie を管理するために url.rewrite を使用する必要はありません。cookiemanager の Google。これは最初のリンクであり、関連性があります。

于 2011-05-06T15:50:03.320 に答える
0

Cookie 処理が組み込まれているApache HttpClientを使用してみてください。

于 2011-05-06T15:49:24.927 に答える