- package ln;
-
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.PrintWriter;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
-
- public class HttpUtils {
-
- public static String sendGet(String url, Map<String, String> parameters) {
- String result="";
- BufferedReader in = null;
- StringBuffer sb = new StringBuffer();
- String params = "";
- try {
-
- if(parameters.size()==1){
- for(String name:parameters.keySet()){
- sb.append(name).append("=").append(
- java.net.URLEncoder.encode(parameters.get(name),
- "UTF-8"));
- }
- params=sb.toString();
- }else{
- for (String name : parameters.keySet()) {
- sb.append(name).append("=").append(
- java.net.URLEncoder.encode(parameters.get(name),
- "UTF-8")).append("&");
- }
- String temp_params = sb.toString();
- params = temp_params.substring(0, temp_params.length() - 1);
- }
- String full_url = url + "?" + params;
- System.out.println(full_url);
-
- java.net.URL connURL = new java.net.URL(full_url);
-
- java.net.HttpURLConnection httpConn = (java.net.HttpURLConnection) connURL
- .openConnection();
-
- httpConn.setRequestProperty("Accept", "*/*");
- httpConn.setRequestProperty("Connection", "Keep-Alive");
- httpConn.setRequestProperty("User-Agent",
- "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
-
- httpConn.connect();
-
- Map<String, List<String>> headers = httpConn.getHeaderFields();
-
- for (String key : headers.keySet()) {
- System.out.println(key + "\t:\t" + headers.get(key));
- }
-
- in = new BufferedReader(new InputStreamReader(httpConn
- .getInputStream(), "UTF-8"));
- String line;
-
- while ((line = in.readLine()) != null) {
- result += line;
- }
- } catch (Exception e) {
- e.printStackTrace();
- }finally{
- try {
- if (in != null) {
- in.close();
- }
- } catch (IOException ex) {
- ex.printStackTrace();
- }
- }
- return result ;
- }
-
- /**
- * 发送POST请求
- *
- * @param url
- * 目的地址
- * @param parameters
- * 请求参数,Map类型。
- * @return 远程响应结果
- */
- public static String sendPost(String url, Map<String, String> parameters) {
- String result = "";
- BufferedReader in = null;
- PrintWriter out = null;
- StringBuffer sb = new StringBuffer();
- String params = "";
- try {
-
- if (parameters.size() == 1) {
- for (String name : parameters.keySet()) {
- sb.append(name).append("=").append(
- java.net.URLEncoder.encode(parameters.get(name),
- "UTF-8"));
- }
- params = sb.toString();
- } else {
- for (String name : parameters.keySet()) {
- sb.append(name).append("=").append(
- java.net.URLEncoder.encode(parameters.get(name),
- "UTF-8")).append("&");
- }
- String temp_params = sb.toString();
- params = temp_params.substring(0, temp_params.length() - 1);
- }
-
- java.net.URL connURL = new java.net.URL(url);
-
- java.net.HttpURLConnection httpConn = (java.net.HttpURLConnection) connURL
- .openConnection();
-
- httpConn.setRequestProperty("Accept", "*/*");
- httpConn.setRequestProperty("Connection", "Keep-Alive");
- httpConn.setRequestProperty("User-Agent",
- "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
-
- httpConn.setDoInput(true);
- httpConn.setDoOutput(true);
-
- out = new PrintWriter(httpConn.getOutputStream());
-
- out.write(params);
-
- out.flush();
-
- in = new BufferedReader(new InputStreamReader(httpConn
- .getInputStream(), "UTF-8"));
- String line;
-
- while ((line = in.readLine()) != null) {
- result += line;
- }
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- if (out != null) {
- out.close();
- }
- if (in != null) {
- in.close();
- }
- } catch (IOException ex) {
- ex.printStackTrace();
- }
- }
- return result;
- }
-
- /**
- * 主函数,测试请求
- *
- * @param args
- */
- public static void main(String[] args) {
- Map<String, String> parameters = new HashMap<String, String>();
- parameters.put("name", "sarin");
- String result =sendGet("http://www.baidu.com", parameters);
- System.out.println(result);
- }
- }
posted on
2018-06-21 16:05
维也纳的忧伤
阅读(
4491)
评论()
编辑
收藏
举报