记录两个http调用方法

匿名 (未验证) 提交于 2019-12-03 00:01:01
/** * http发送post请求 * @param url * @param param * @return */public static String sendPost(String url, String param) {   PrintWriter out = null;   BufferedReader in = null;   String result = "";   try {      URL realUrl = new URL(url);      // 打开和URL之间的连接      URLConnection conn = realUrl.openConnection();      // 设置通用的请求属性      conn.setRequestProperty("accept", "*/*");      conn.setRequestProperty("connection", "Keep-Alive");      conn.setRequestProperty("user-agent",            "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");      conn.setRequestProperty("Content-Type", "application/json");      // 发送POST请求必须设置如下两行      conn.setDoOutput(true);      conn.setDoInput(true);      // 获取URLConnection对象对应的输出流      out = new PrintWriter(conn.getOutputStream());      // 发送请求参数      out.print(param);      // flush输出流的缓冲      out.flush();      // 定义BufferedReader输入流来读取URL的响应      in = new BufferedReader(            new InputStreamReader(conn.getInputStream()));      String line;      while ((line = in.readLine()) != null) {         result += line;      }   } catch (Exception e) {      logger.error("发送 POST 请求出现异常!"+e);      e.printStackTrace();   }   //使用finally块来关闭输出流、输入流   finally{      try{         if(out!=null){            out.close();         }         if(in!=null){            in.close();         }      }      catch(IOException ex){         ex.printStackTrace();      }   }   return result;}
/**    * http发送get请求    * @param url    * @param param    * @return    */   public static String sendGet(String url, String param) {      String result = "";      BufferedReader in = null;      try {         String urlNameString = url + "?" + param;         URL realUrl = new URL(urlNameString);         // 打开和URL之间的连接         URLConnection connection = realUrl.openConnection();         // 设置通用的请求属性         connection.setRequestProperty("accept", "*/*");         connection.setRequestProperty("connection", "Keep-Alive");         connection.setRequestProperty("user-agent",               "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");         // 建立实际的连接         connection.connect();         // 获取所有响应头字段//       Map<String, List<String>> map = connection.getHeaderFields();         // 遍历所有的响应头字段         // 定义 BufferedReader输入流来读取URL的响应         in = new BufferedReader(new InputStreamReader(               connection.getInputStream()));         String line;         while ((line = in.readLine()) != null) {            result += line;         }      } catch (Exception e) {         logger.error("发送GET请求出现异常!" + e);         e.printStackTrace();      }      // 使用finally块来关闭输入流      finally {         try {            if (in != null) {               in.close();            }         } catch (Exception e2) {            e2.printStackTrace();         }      }      return result;   }
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!