Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用HttpURLConnection在java中通过post发送参数?_Java_Httprequest_Httpresponse - Fatal编程技术网

如何使用HttpURLConnection在java中通过post发送参数?

如何使用HttpURLConnection在java中通过post发送参数?,java,httprequest,httpresponse,Java,Httprequest,Httpresponse,我无法使用HttpURLConnection通过java参数中的POST方法发送。我一直在尝试一些方法,做了很多研究,但没有一种方法对我有效。我将留下下面的代码,让您指出可以进行的可能修改 import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStream;

我无法使用HttpURLConnection通过java参数中的POST方法发送。我一直在尝试一些方法,做了很多研究,但没有一种方法对我有效。我将留下下面的代码,让您指出可以进行的可能修改

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

public class HttpTeste {

    private final String USER_AGENT = "Mozilla/5.0";

    public void sendPost(String url) throws Exception {

        URL obj = new URL(url);
        HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();

        //add request header
        con.setRequestMethod("POST");
        con.setRequestProperty("User-Agent", USER_AGENT);
        con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");

        String urlParameters = "idRoute=1";

        // Send post request
        con.setDoOutput(true);
        DataOutputStream wr = new DataOutputStream(con.getOutputStream());
        wr.writeBytes(urlParameters);
        wr.flush();
        wr.close();

        int responseCode = con.getResponseCode();
        System.out.println("\nSending 'POST' request to URL : " + url);
        System.out.println("Post parameters : " + urlParameters);
        System.out.println("Response Code : " + responseCode);

        BufferedReader in = new BufferedReader(
                new InputStreamReader(con.getInputStream()));
        String inputLine;
        StringBuffer response = new StringBuffer();

        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }
        in.close();

        //print result
        System.out.println(response.toString());

    }
}
如您所见,我试图通过
urlParameters
发送请求的参数,但仍然没有成功。代码运行时不会确认任何错误,但不会返回应返回的响应。 我还尝试通过
String urlParameters=urlcoder.encode(“idRoute”,“UTF-8”)+“=”+urlcoder.encode(“1”,“UTF-8”);
writeBytes(URL参数)

但它也没有起作用,谢谢大家的合作

它必须与HttpURLConnection一起工作吗?如果不是,您只是想发送一个POST请求,我建议您使用

,这将有助于您在Akash链接的问题的已接受答案中注意到,代码设置了
“内容类型”
“内容长度”
请求属性。你需要设置这些。