package com.http.test;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
public class SendHttp {
//public static final String GET_URL = "Http://localhost:8888/HttpDemo/";
public static final String GET_URL = "Http://www.baidu.com/";
public static final String POST_URL = "Http://localhost:8888/HttpDemo/";
//获取get请求的数据资源
public static void getSourceFromHttpGetRequest() throws IOException{
//拼接请求地址,包含数据
String getURL = GET_URL+"?username="+URLEncoder.encode("this is http get request", "UTF-8");
URL url = new URL(getURL);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//建立连接
connection.connect();
//发送数据到服务器并使用Reader读取返回的数据
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String lines;
System.out.println("===================================================");
System.out.println("请求的内容");
System.out.println("===================================================");
while((lines=reader.readLine())!=null){
System.out.println(lines);
}
reader.close();
//断开连接
connection.disconnect();
System.out.println("============================");
System.out.println("请求结束");
System.out.println("============================");
}
public static void getSourceFromHttpRequestPost() throws IOException{
URL postURL = new URL(POST_URL);
//打开连接
HttpURLConnection connection = (HttpURLConnection) postURL.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setUseCaches(false);
connection.setInstanceFollowRedirects(true);
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
DataOutputStream out = new DataOutputStream(connection.getOutputStream());
String content = "firstname="+URLEncoder.encode("POST请求", "UTF-8");
out.writeBytes(content);
out.flush();
out.close();
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String lines ;
while (( lines =reader.readLine()) !=null ){
System.out.println(lines);
}
System.out.println("==========================");
System.out.println("post end");
System.out.println("==========================");
reader.close();
}
public static void main(String[] args) throws IOException {
//getSourceFromHttpGetRequest();
getSourceFromHttpRequestPost();
}
}