gpt4 book ai didi

java - 如何从 HttpURLConnection 切换到 HttpClient

转载 作者:搜寻专家 更新时间:2023-11-01 01:18:24 27 4
gpt4 key购买 nike

这是我的第一个问题,所以请耐心等待。

我有一个 Swing 应用程序,它通过 HttpURLConnection 从服务器获取 XML 格式的数据。现在我正在尝试与服务器创建一个持续的请求-响应连接,以检查应用程序是否有任何更新(因为必须定期且经常(大约每秒一次)进行检查)。

在一些问题的评论中,我读到最好使用 Apache HttpClient 而不是 HttpURLConnection 来维持实时连接,但我找不到任何好的示例如何从我当前的代码转到使用 HttpClient 的代码。具体来说,用什么代替 HttpURLConnection.setRequestProperty() 和 HttpURLConnection.getOutputStream()?

Document request = new Document(xmlElement);
Document response = new Document();

String server = getServerURL(datasetName);
try {
URL url = new URL(server);
try {
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestProperty("Content-Type","application/xml; charset=ISO-8859-1");
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
OutputStream output = connection.getOutputStream();

XMLOutputter serializer = new XMLOutputter();
serializer.output(request, output);

output.flush();
output.close();

InputStream input = connection.getInputStream();
String tempString = ErrOut.printToString(input);

SAXBuilder parser = new SAXBuilder();
try {
response = parser.build(new StringReader(tempString));
}
catch (JDOMException ex) { ... }
input.close();
connection.disconnect();
}
catch (IOException ex) { ... }
}
catch (MalformedURLException ex) { ... }

最佳答案

我认为 apache 提供了所有示例。如果您使用的是 httpclient 4,则可以引用此 URL http://hc.apache.org/httpcomponents-client-ga/examples.html

此外,您可能会发现这很有用.. w.r.t 设置响应类型等 http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html

关于java - 如何从 HttpURLConnection 切换到 HttpClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8534342/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com