Java HTTP POST 请求示例:发送数据并获取响应
使用Java进行HTTP通讯,发送POST请求并携带数据的示例代码如下:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
public class HttpClientExample {
public static void main(String[] args) {
try {
// 创建URL对象
URL url = new URL("http://example.com/api/endpoint");
// 创建HttpURLConnection对象
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// 设置请求方法为POST
connection.setRequestMethod("POST");
// 允许输出数据
connection.setDoOutput(true);
// 定义要发送的数据
String data = "param1=value1¶m2=value2";
// 设置请求体的类型为表单数据
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// 获取输出流
OutputStream outputStream = connection.getOutputStream();
// 将数据写入输出流
outputStream.write(data.getBytes(StandardCharsets.UTF_8));
outputStream.flush();
outputStream.close();
// 获取响应代码
int responseCode = connection.getResponseCode();
// 读取响应内容
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
reader.close();
// 打印响应结果
System.out.println("Response Code: " + responseCode);
System.out.println("Response Body: " + response.toString());
// 关闭连接
connection.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
在上述示例中,我们首先创建了一个URL对象,指定了要发送POST请求的目标URL。然后,我们创建了一个HttpURLConnection对象,并设置请求方法为POST。接下来,我们定义了要发送的数据,并将其写入输出流中。然后,我们发送请求并获取响应代码和响应内容。最后,我们关闭连接。
请注意,示例中的URL和数据仅作为示例使用,请根据实际情况进行修改。
原文地址: https://www.cveoy.top/t/topic/pV7S 著作权归作者所有。请勿转载和采集!