/****/
packagetestJava.java;importjava.io.BufferedReader;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.net.HttpURLConnection;importjava.net.URL;importjava.util.Base64;/***@authorxxx
* @function
* @date 2016年4月12日
*@version
*/
public classZuzuche {public static String appPost(Object jsonBean, String reqUrl,String method) throwsException{//发送数据
HttpURLConnection conn;try{
URL url= newURL(reqUrl);
conn=(HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setInstanceFollowRedirects(false);//是否自动处理重定向
conn.setRequestMethod(method);//conn.setRequestProperty("User-Agent", "xxxEs_console");//conn.setRequestProperty("Content-Type","application/x-gzip");
conn.setRequestProperty("Host", "xxx.yyy.com");
conn.setRequestProperty("Connection", "keep-alive");//base64编码的"user:passwd"字符串。如果没有,或者用户密码不对,则返回http code 401页面给客户端//Authorization: "Basic 用户名和密码的base64加密字符串",注意用户名和密码中间的冒号.
conn.setRequestProperty("Authorization", "Basic xfdfsfwUxMTc1LWhQQCZ9fjpjfdsfsfesOw==");
conn.connect();//接收返回数据
InputStream in =conn.getInputStream();//GZIPInputStream gzin = new GZIPInputStream(in);//BufferedReader reader = new BufferedReader(new InputStreamReader(gzin,"UTF-8"));
BufferedReader reader = new BufferedReader(new InputStreamReader(in,"UTF-8"));
String line;
StringBuffer sb=newStringBuffer();while ((line = reader.readLine()) != null) {
sb.append(line);
}
reader.close();
conn.disconnect();returnsb.toString();
}catch(Exception e) {throwe;
}
}public static voidmain(String[] args) {//base64加密
byte[] auth = Base64.getEncoder().encode("用户名:密码".getBytes());
String sauth= newString(auth);
System.out.println("sauth="+sauth);//或者: 用户名:[email protected],在火狐浏览器上面.
String url= "http://xxx.yyy.com/2.0/standard/queryStatistic.php?beginDate=2016-04-01&endDate=2016-04-02";try{
System.out.println("url="+url);
String result= appPost(null, url, "GET");
System.err.println("接口调用返回结果:" +result);
}catch(Exception e) {//TODO Auto-generated catch block
e.printStackTrace();
}
}
}