2

私は http と Apache の HttpComponents API の初心者です。

Apache の HttpComponents を使用して http 要求のストリーミング応答を処理する必要がありますが、その接続で追加の http 要求が行われる可能性があります。たとえば、POST リクエストは最初にhttp://mystreams.netに対して行われ、後で追加のリクエストが続きますが、その間ずっとストリーミング レスポンスをリッスンして処理する必要があります。最初に行ったのと同じ接続を保持する必要があります。

どうやってやるの?シンプルなものを作成してシンプルなリクエストを実行し、非ストリーミングのレスポンス エンティティを処理することができましたがHttpClientHttpPostデータをストリーミングし続け、同時に同じアドレスに新しいリクエストを行うときに、それを保持するにはどうすればよいですか同じコンテキスト (Cookie など) を使用していますか?

4

2 に答える 2

1

ストリーミング データは単一の HTTP 応答として返されますか? その場合、接続が完了するまで、その接続で他の応答を受信できません。ただし、その応答から Cookie を取得し (エンティティをまだストリーミングしている間に)、それらを使用して別の接続で他の要求を行うことができます。

于 2009-11-18T08:54:37.900 に答える
0
  • HttpEntity entity = httpclient.execute(httpget).getEntity();
  • InputStream is = entity.getContent()
  • ストリームを呼び出すときは、新しいスレッドを使用し、その後のリクエストをメイン スレッドで行います (または、別のスレッドでリーチすることをお勧めします)。

こちらもチェック

于 2009-11-18T08:55:12.470 に答える