java post请求代码
时间: 2024-04-14 16:19:33 浏览: 11
以下是一个简单的Java POST请求示例代码:
```java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
public class HttpPostExample {
public static void main(String[] args) {
try {
String url = "http://example.com/api";
String data = "param1=value1¶m2=value2";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
// 添加请求头
con.setRequestMethod("POST");
con.setRequestProperty("User-Agent", "Mozilla/5.0");
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// 发送POST请求
con.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(con.getOutputStream());
wr.write(data);
wr.flush();
wr.close();
// 获取响应
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
// 打印响应结果
System.out.println(response.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
其中,`url`是请求的URL,`data`是请求参数,可以是字符串或者键值对。使用`con.setRequestMethod("POST")`设置请求方法为POST,使用`con.setRequestProperty`添加请求头,使用`con.setDoOutput(true)`设置可以输出请求数据。请求数据发送完成后,使用`con.getInputStream()`获取响应结果。