我正在尝试使用来自 Java 的 couchdb(连续)更改 API,并发现在用完当前更改列表后,流似乎已关闭,而不是像预期的那样永远保持打开状态。
我正在使用的代码如下。我希望永远不会退出 while 循环,但会在当前存在的更改完成流式传输后立即执行。我对 couchdb 和 Java 都比较陌生,所以可能会遗漏一些明显的东西。谁能告诉我如何正确写这个?
URL url = new URL("[path to database here]/_changes?feed=continuous";);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setUseCaches(false);
conn.setRequestProperty("Connection", "Keep-Alive");
conn.setRequestMethod("GET");
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while((line = reader.readLine()) != null){
// do something with the line here
}
// Should never get here under normal circumstances
reader.close();