2015-09-25 109 views
0

我有一个服务器,需要一个POST请求和数据流的答案。我在URL上看到过,我可以打开一个连接或一个流。甲流,但是,有写出来的数据没有方法:发送POST和阅读流式响应

URL url = new URL("..."); 
url.openConnection(); //either I open a connection which has a output stream, but no input 
url.openStream(); //or I open a stream, but I cannot write anything out 

我怎样才能完美地解决这个问题呢?

+1

漂亮很好的解释来看看详细解释一下:http://stackoverflow.com/questions/2793150/using-java-net-urlconnection-to-fire-并处理http请求 – GPI

回答

1

使用OutputStream的示例代码片段。

注意:您可以设置内容类型&仅向URL发送一些URL参数。

URL obj = new URL(url);//some url 
    HttpURLConnection con = (HttpURLConnection) obj.openConnection(); 
    con.setDoOutput(true); 
    DataOutputStream wr = new DataOutputStream(con.getOutputStream()); 
    String urlParams = "fName=xyz&lname=ABC&pin=12345"; // some parameters 
    wr.writeBytes(urlParams); 
    wr.flush(); 
    wr.close(); 

在这article1article2

+0

我会质疑'urlParams'变量的命名,因为它的内容在HTTP请求的BODY中传递,而不是在URL本身中传递。 (在发布应用程序/ x-www-form-urlencoded请求时,您必须对参数进行URL编码这一事实并不意味着这些参数是URL参数)。 – GPI