以下是使用Commons HttpClient库通过HTTP GET方法从网站检索信息的示例。该方法将响应作为流返回HttpMethod.getResponseBodyAsStream()。如果您想要简单的内容,则可以使用HttpMethod.getResponseBodyAsString()方法以字符串形式获取响应。package org.nhooo.example.commons.httpclient;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;
import java.io.*;
import java.nio.charset.StandardCharsets;
public class HttpGetDemo {
public static void main(String[] args) {
HttpClient client = new HttpClient();
HttpMethod method = new GetMethod("https://nhooo.org");
try {
client.executeMethod(method);
if (method.getStatusCode() == HttpStatus.SC_OK) {
InputStream is = method.getResponseBodyAsStream();
if (is != null) {
Writer writer = new StringWriter();
char[] buffer = new char[1024];
try {
Reader reader = new BufferedReader(new InputStreamReader(is,
StandardCharsets.UTF_8));
int length;
while ((length = reader.read(buffer)) != -1) {
writer.write(buffer, 0, length);
}
} finally {
is.close();
}
System.out.println("Response = " + writer.toString());
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
method.releaseConnection();
}
}
}
Maven依赖
commons-httpclient
commons-httpclient
3.1