如题。
HttpURLConnection 有GET和POST两种方法。
GET方法,我知道是怎么回事儿,就是通过把参数键值对附加在url后面来传递的。
比如我写一个:
public static final String GET_URL = "http://localhost/test1/";
public static void readContentFromGet() throws IOException{
String getURL = GET_URL + "DocumentEdit.php?FileType=" + URLEncoder.encode(".doc&UserName=演示人&Template=", "utf-8");
URL getUrl = new URL(getURL);
HttpURLConnection connection = (HttpURLConnection) getUrl.openConnection();
connection.connect();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
System.out.println("=============================");
System.out.println("Contents of get request");
System.out.println("=============================");
String lines;
while ((lines = reader.readLine()) != null){
System.out.println(lines);
}
reader.close();
connection.disconnect();
System.out.println("=============================");
System.out.println("Contents of get request ends");
System.out.println("=============================");
}上面实际上就是把页面http://localhost/test1/DocumentEdit.php?FileType=.doc&UserName=演示人&Template= 这个页面的内容给打印出来了。那么POST的工作方式,看了几个帖子没看懂。里面有个content是什么意思?利用POST据说是不用写这么长的地址,那么如何打印出来这些内容?不知道我说明白了没有。
HttpURLConnection 有GET和POST两种方法。
GET方法,我知道是怎么回事儿,就是通过把参数键值对附加在url后面来传递的。
比如我写一个:
public static final String GET_URL = "http://localhost/test1/";
public static void readContentFromGet() throws IOException{
String getURL = GET_URL + "DocumentEdit.php?FileType=" + URLEncoder.encode(".doc&UserName=演示人&Template=", "utf-8");
URL getUrl = new URL(getURL);
HttpURLConnection connection = (HttpURLConnection) getUrl.openConnection();
connection.connect();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
System.out.println("=============================");
System.out.println("Contents of get request");
System.out.println("=============================");
String lines;
while ((lines = reader.readLine()) != null){
System.out.println(lines);
}
reader.close();
connection.disconnect();
System.out.println("=============================");
System.out.println("Contents of get request ends");
System.out.println("=============================");
}上面实际上就是把页面http://localhost/test1/DocumentEdit.php?FileType=.doc&UserName=演示人&Template= 这个页面的内容给打印出来了。那么POST的工作方式,看了几个帖子没看懂。里面有个content是什么意思?利用POST据说是不用写这么长的地址,那么如何打印出来这些内容?不知道我说明白了没有。
<form action="xxoo.jsp" method="post">
<input name="user">
<input name="pass">
<input type="submit">
</form>
这种就是POST提交。数据不是放在URL中,而是作为HTTP请求中的正文(content)来进行提交的。
不过用HttpURLConnection直接编程的话呢,如果参数只有1、2个,那么直接用GET简单。另一个要注意的是:URL长度有限,4K封顶;所以GET方式也无法传大参数。