java 后台发送post
时间: 2023-10-22 19:59:42 浏览: 36
在Java后台中发送POST请求可以使用Java的HttpURLConnection类。下面是一个简单的示例代码:
```
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.OutputStream;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class HttpPostExample {
public static void main(String[] args) throws Exception {
String url = "http://example.com/api";
String postData = "param1=value1¶m2=value2";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
// 设置请求方法为POST
con.setRequestMethod("POST");
// 设置请求头
con.setRequestProperty("User-Agent", "Mozilla/5.0");
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
// 启用输出流
con.setDoOutput(true);
// 向服务器发送数据
OutputStream os = con.getOutputStream();
os.write(postData.getBytes());
os.flush();
os.close();
// 读取服务器返回的数据
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());
}
}
```
其中,`url` 是请求的地址,`postData` 是请求的数据,可以是字符串,也可以是字节数组。在发送请求之前,需要设置请求方法为POST,并设置请求头,例如设置User-Agent和Content-Type。然后启用输出流,向服务器发送数据。最后读取服务器返回的数据,可以使用BufferedReader读取数据,也可以使用其他的方式。