java模拟getpost请求

来源:互联网 发布:马云是如何开创淘宝的 编辑:程序博客网 时间:2024/06/17 05:16

java get请求


public static String sendPost(String url, Map<String, String> parameters) {          String result = "";// 返回的结果          BufferedReader in = null;// 读取响应输入流          DataOutputStream 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);              }              // 创建URL对象              java.net.URL connURL = new java.net.URL(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)");              // 设置POST方式              httpConn.setDoInput(true);              httpConn.setDoOutput(true);              // 获取HttpURLConnection对象对应的输出流              out = new DataOutputStream(httpConn.getOutputStream());              // 发送请求参数              out.write(params.getBytes("UTF-8"));              // flush输出流的缓冲              out.flush();              // 定义BufferedReader输入流来读取URL的响应,设置编码方式              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;      }  

java post请求


 <pre name="code" class="java">public static String sendPost(String url, Map<String, String> parameters) {              String result = "";// 返回的结果              BufferedReader in = null;// 读取响应输入流              DataOutputStream 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);                  }                  // 创建URL对象                  java.net.URL connURL = new java.net.URL(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)");                  // 设置POST方式                  httpConn.setDoInput(true);                  httpConn.setDoOutput(true);                  // 获取HttpURLConnection对象对应的输出流                  out = new DataOutputStream(httpConn.getOutputStream());                  // 发送请求参数                  out.write(params.getBytes("UTF-8"));                  // flush输出流的缓冲                  out.flush();                  // 定义BufferedReader输入流来读取URL的响应,设置编码方式                  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;          }  




0 0