http接続を行うとき、私は少し混乱しています。サーバーからのデータが電話、クライアントでダウンロードを終了したコードのどこで知りたいですか?
次のコード、標準の http Java 接続コードがあります。
DefaultHttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
try {
HttpResponse execute = client.execute(httpGet);
InputStream content = execute.getEntity().getContent();
BufferedReader buffer = new BufferedReader(new InputStreamReader(content));
String s = "";
while ((s = buffer.readLine()) != null) {
response += s;
}
} catch (Exception e) {
e.printStackTrace();
}
}
したがって、問題は実際に何が起こるかです:
HttpResponse execute = client.execute(httpGet);
InputStream content = execute.getEntity().getContent();
この場所にダウンロードされたすべてのサーバー データですか、それともサーバーからのデータがまだ while ブロックに到着している可能性がありますか
while ((s = buffer.readLine()) != null) {
response += s;
}
私の理解では、接続は次の場所でまだ有効です。
while ((s = buffer.readLine()) != null) {
response += s;
}
ソケットが読み取られている間に、さらに多くのデータが来る可能性があります。私はストリームを使用して、映画などの入札データを処理したり、大きなルートを描いたり、来るように表示する必要があるものを描いたりしているので、これを知っています。