我正在查询服务器(我没有编写)以获取网站的 HTML,但服务器有一些错误,有时不返回答案。我的方法有一个问题,但需要几分钟才能启动,同时我的代码陷入困境。错误发生在 rd = new BufferedReader(new Input... 行。如果服务器在一两秒内没有返回答案,有没有办法使用计时器强制我的代码退出该方法?我结束了代码每运行几百次就会出现这个错误。
public String getHTML(String urlToRead) {
URL url;
HttpURLConnection conn;
BufferedReader rd;
String line;
String result = "";
try {
url = new URL(urlToRead);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
while ((line = rd.readLine()) != null) {
result += line;
}
rd.close();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}