java 编写post方法 x-www-form-urlencoded
时间: 2024-01-19 08:02:46 浏览: 137
可以使用 Java 的 HttpURLConnection 类来编写 post 方法发送 x-www-form-urlencoded 格式的数据。具体实现步骤如下:
1. 创建 URL 对象,指定要发送请求的地址。
2. 调用 URL 对象的 openConnection() 方法获取 HttpURLConnection 对象。
3. 设置 HttpURLConnection 对象的请求方法为 POST。
4. 设置 HttpURLConnection 对象的请求头部信息,包括 Content-Type 和 Content-Length。
5. 获取 HttpURLConnection 对象的输出流,向其中写入要发送的数据。
6. 调用 HttpURLConnection 对象的 getInputStream() 方法获取响应结果。
以下是一个示例代码:
```java
import java.io.*;
import java.net.*;
public class PostExample {
public static void main(String[] args) throws Exception {
String url = "http://example.com/api";
String data = "param1=value1¶m2=value2";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
// 设置请求方法为 POST
con.setRequestMethod("POST");
// 设置请求头部信息
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
con.setRequestProperty("Content-Length", Integer.toString(data.length()));
// 获取输出流,向其中写入要发送的数据
con.setDoOutput(true);
OutputStream os = con.getOutputStream();
os.write(data.getBytes("UTF-8"));
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());
}
}
```
阅读全文