猿问

Java-通过POST方法轻松发送HTTP参数

Java-通过POST方法轻松发送HTTP参数

我正在成功地使用此代码发送HTTP具有某些参数的请求GET方法

void sendRequest(String request){
    // i.e.: request = "http://example.com/index.php?param1=a&param2=b&param3=c";
    URL url = new URL(request); 
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();           
    connection.setDoOutput(true); 
    connection.setInstanceFollowRedirects(false); 
    connection.setRequestMethod("GET"); 
    connection.setRequestProperty("Content-Type", "text/plain"); 
    connection.setRequestProperty("charset", "utf-8");
    connection.connect();}

现在我可能需要通过POST方法,因为它们很长。我正在考虑在该方法中添加一个额外的参数(即字符串httpMethod)。

如何尽可能少地更改上面的代码,以便能够通过GETPOST?

我希望改变

connection.setRequestMethod("GET");

connection.setRequestMethod("POST");

本可以做到这一点,但参数仍然是通过GET方法发送的。

HttpURLConnection有什么有用的方法吗?有任何有用的Java构造吗?

任何帮助都将不胜感激。


HUX布斯
浏览 2983回答 4
4回答

梦里花落0921

我看到其他一些答案给出了替代方案,我个人认为直觉上你是在做正确的事情;)对不起,在奉献者xx中,有几个演讲者一直在对这类事情大声疾呼。这就是为什么我亲自使用Apache的HTTPClient/HttpCore为了完成这类工作,我发现它们的API比Java的原生HTTP支持更容易使用。当然!
随时随地看视频慕课网APP

相关分类

Java
我要回答