java发送 x-www-form-urlencodedhttp请求
时间: 2023-09-11 18:02:54 浏览: 132
可以使用 Java 的 HttpURLConnection 类来发送 x-www-form-urlencoded 格式的 HTTP 请求,以下是一个示例代码:
```java
import java.net.*;
import java.io.*;
public class HttpExample {
public static void main(String[] args) throws Exception {
URL url = new URL("http://www.example.com/api");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
// 设置请求方法为 POST
con.setRequestMethod("POST");
// 设置请求头信息
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
con.setRequestProperty("User-Agent", "Java client");
// 开启输出流,并写入请求体数据
con.setDoOutput(true);
OutputStream os = con.getOutputStream();
String requestBody = "key1=value1&key2=value2";
os.write(requestBody.getBytes("UTF-8"));
os.flush();
os.close();
// 获取响应状态码
int responseCode = con.getResponseCode();
System.out.println("Response Code : " + responseCode);
// 读取响应体数据
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer responseBody = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
responseBody.append(inputLine);
}
in.close();
// 输出响应体数据
System.out.println("Response Body : " + responseBody.toString());
}
}
```
这个示例代码使用 POST 方法发送了一个 x-www-form-urlencoded 数据格式的请求体数据,并读取了响应状态码和响应体数据。你需要根据实际情况修改请求 URL、请求头信息、请求体数据等内容。
阅读全文