在Java中使用POST请求方式获取多个String类型的参数,可以通过以下步骤实现:

  1. 创建一个HTTPURLConnection对象,并设置请求方式为POST:
URL url = new URL("http://www.example.com");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
  1. 构建请求参数,将参数按照key-value的形式进行拼接:
String param1 = "param1";
String param2 = "param2";
String param3 = "param3";

String urlParams = "param1=" + URLEncoder.encode(param1, "UTF-8") +
                   "&param2=" + URLEncoder.encode(param2, "UTF-8") +
                   "&param3=" + URLEncoder.encode(param3, "UTF-8");
  1. 将请求参数写入到输出流中:
OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
writer.write(urlParams);
writer.flush();
  1. 获取请求的响应结果:
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
StringBuilder response = new StringBuilder();

while ((line = reader.readLine()) != null) {
    response.append(line);
}

reader.close();

完整的示例代码如下:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

public class PostRequestExample {
    public static void main(String[] args) {
        try {
            URL url = new URL("http://www.example.com");
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestMethod("POST");
            conn.setDoOutput(true);

            String param1 = "param1";
            String param2 = "param2";
            String param3 = "param3";

            String urlParams = "param1=" + URLEncoder.encode(param1, "UTF-8") +
                               "&param2=" + URLEncoder.encode(param2, "UTF-8") +
                               "&param3=" + URLEncoder.encode(param3, "UTF-8");

            OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
            writer.write(urlParams);
            writer.flush();

            BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String line;
            StringBuilder response = new StringBuilder();

            while ((line = reader.readLine()) != null) {
                response.append(line);
            }

            reader.close();
            writer.close();

            System.out.println("Response: " + response.toString());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

请注意,上述示例中的URL和参数仅供参考,实际使用时需要根据自己的需求进行修改。同时,要确保服务端能够正确处理POST请求,并解析参数

java中用post请求方式获取不到多个String类型的参数

原文地址: https://www.cveoy.top/t/topic/hMvJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录