如何向Web站点发送GET请求,POST请求,并从Web站点获取响应
public class GetPostTest {
public static String sendGet(String url, String param){
String result = "";
String urlName = url + "?" + param;
try{
URL realUrl = new URL(urlName);
URLConnection conn = realUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-ageent", "Mozilla/4.0 (compatible; MSIE 6.0"
+ "; Windows NT 5.1; SV1)");
conn.connect();
Map<String, List<String>> map = conn.getHeaderFields();
for(String key : map.keySet()){
System.out.println(key + "--->" + map.keySet());
}
try(
BufferedReader in = new BufferedReader(
new InputStreamReader(conn.getInputStream(), "utf-8")))
{
String line;
while((line = in.readLine()) != null ){
result += "\n" + line;
}
}
}catch (Exception e){
System.out.println("发送GET请求出现异常!" + e);
e.printStackTrace();
}
return result;
}
public static String sendPost(String url, String param){
String result = "";
try{
URL realUrl = new URL(url);
URLConnection conn = realUrl.openConnection();
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-ageent", "Mozilla/4.0 (compatible; MSIE 6.0"
+ "; Windows NT 5.1; SV1)");
conn.setDoOutput(true);
conn.setDoInput(true);
try(
PrintWriter out = new PrintWriter(conn.getOutputStream()))
{
out.print(param);
out.flush();
}
try(
BufferedReader in = new BufferedReader(new InputStreamReader(
conn.getInputStream(), "utf-8")))
{
String line;
while((line = in.readLine()) != null){
result += "\n" + line;
}
}
}catch (Exception e){
System.out.println("发送POST请求出现异常!" + e);
e.printStackTrace();
}
return result;
}
public static void main(String[] args){
String s = GetPostTest.sendGet("http://localhost:8080/lab1_3_1/index.jsp", null);
System.out.println(s);
String s1 = GetPostTest.sendPost("http://localhost:8080/lab1_3_1/index.jsp",
"name=carzyit.org&pass=leegang");
System.out.println(s1);
}
}