java实现发送HTTP的POST请求,返回数据以及请求状态
2017-06-26 10:25
721 查看
代码如下:
/** * @param url:请求url * @param content: 请求体(参数) * @return errorStr:错误信息;status:状态码,response:返回数据 */ public Map<String, Object> request(String url, String content) { Map<String, Object> result = new HashMap<String, Object>(); String errorStr = ""; String status = ""; String response = ""; PrintWriter out = null; BufferedReader in = null; try { URL realUrl = new URL(url); // 打开和URL之间的连接 URLConnection conn = realUrl.openConnection(); HttpURLConnection httpUrlConnection = (HttpURLConnection) conn; // 设置请求属性 httpUrlConnection.setRequestProperty("Content-Type", "application/json"); httpUrlConnection.setRequestProperty("x-adviewrtb-version", "2.1"); // 发送POST请求必须设置如下两行 httpUrlConnection.setDoOutput(true); httpUrlConnection.setDoInput(true); // 获取URLConnection对象对应的输出流 out = new PrintWriter(httpUrlConnection.getOutputStream()); // 发送请求参数 out.write(content); // flush输出流的缓冲 out.flush(); httpUrlConnection.connect(); // 定义BufferedReader输入流来读取URL的响应 in = new BufferedReader(new InputStreamReader(httpUrlConnection.getInputStream())); String line; while ((line = in.readLine()) != null) { response += line; } status = new Integer(httpUrlConnection.getResponseCode()).toString(); } catch (Exception e) { System.out.println("发送 POST 请求出现异常!" + e); errorStr = e.getMessage(); } // 使用finally块来关闭输出流、输入流 finally { try { if (out != null) { out.close();} if (in != null) {in.close();} } catch (Exception ex) { ex.printStackTrace(); } } result.put("errorStr", errorStr); result.put("response", response); result.put("status", status); return result; }
相关文章推荐
- spring mvc 发送http post请求返回的中文数据乱码
- 多种方式实现(jdk原生api实现/httpClient的实现) java 发送http(post/get)请求并携带参数(讲解超详细)
- java 通过发送json,post请求,返回json数据的方法
- Java用org.apache.http.client的HttpClient发送Post请求 可获取返回Header
- Java--org.apache.http.client的HttpClient发送Post请求,获取返回Header
- Java用org.apache.http.client的HttpClient发送Post请求 可获取返回Header
- android发送http post请求函数带参数带返回数据 静态类 源码
- 用Java实现发送http的get和post请求
- Java用org.apache.http.client的HttpClient发送Post请求 可获取返回Header
- Java发送http POST,GET,并获取返回数据
- java实现http post方法发送数据
- java 发送http协议的POST请求获取数据
- spring mvc 发送http post请求返回的中文数据乱码
- 用HttpURLConnection 在Java后台发送请求并接收返回数据
- Java HttpClient Post请求发送数据乱码
- java 通过发送json,post请求,返回json数据
- java模拟http发送请求与接受返回数据
- java发送http的get、post请求实现代码
- java实现httpclient发送post请求
- 模拟http发送post请求并返回数据