java请求posturl进行传参
时间: 2024-06-09 16:11:26 浏览: 47
下面是Java使用POST方法发送请求并传递参数的示例代码:
```java
import java.io.*;
import java.net.*;
public class PostRequestExample {
public static void main(String[] args) throws Exception {
// 设置请求参数
String urlParameters = "param1=value1¶m2=value2";
byte[] postData = urlParameters.getBytes( StandardCharsets.UTF_8 );
int postDataLength = postData.length;
String request = "http://example.com/api/path";
URL url = new URL(request);
// 创建连接
HttpURLConnection conn= (HttpURLConnection) url.openConnection();
conn.setDoOutput( true );
conn.setInstanceFollowRedirects( false );
conn.setRequestMethod( "POST" );
conn.setRequestProperty( "Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty( "charset", "utf-8");
conn.setRequestProperty( "Content-Length", Integer.toString( postDataLength ));
conn.setUseCaches( false );
// 发送请求
try( DataOutputStream wr = new DataOutputStream( conn.getOutputStream())) {
wr.write( postData );
}
// 处理响应
int responseCode = conn.getResponseCode();
BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
// 输出响应结果
System.out.println("Response Code : " + responseCode);
System.out.println("Response Content:\n" + response.toString());
}
}
```
在代码中,我们使用 `HttpURLConnection` 类创建连接并设置请求方法、请求头、请求参数等信息。然后,我们可以使用 `DataOutputStream` 类的 `write` 方法将请求参数写入连接的输出流中。最后,我们可以通过连接的 `getResponseCode()` 方法获取响应状态码,通过 `getInputStream()` 方法获取响应内容的输入流,并使用 `BufferedReader` 类读取响应内容。
阅读全文