java后台模拟浏览器请求--GET/POST
来源:互联网 发布:诈骗犯罪抓获数据 编辑:程序博客网 时间:2024/04/30 03:43
package com.cplatform.movie.back.test;import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder;public class HttpURLConnectionTest { public static final String GET_URL = "http://112.4.27.9/mall-back/if_user/store_list?storeId=32"; public static final String POST_URL = "http://112.4.27.9/mall-back/if_user/store_list"; /** * 接口调用 GET */ public static void httpURLConectionGET() { try { URL url = new URL(GET_URL); // 把字符串转换为URL请求地址 HttpURLConnection connection = (HttpURLConnection) url.openConnection();// 打开连接 connection.connect();// 连接会话 // 获取输入流 BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line; StringBuilder sb = new StringBuilder(); while ((line = br.readLine()) != null) {// 循环读取流 sb.append(line); } br.close();// 关闭流 connection.disconnect();// 断开连接 System.out.println(sb.toString()); } catch (Exception e) { e.printStackTrace(); System.out.println("失败!"); } } /** * 接口调用 POST */ public static void httpURLConnectionPOST () { try { URL url = new URL(POST_URL); // 将url 以 open方法返回的urlConnection 连接强转为HttpURLConnection连接 (标识一个url所引用的远程对象连接) HttpURLConnection connection = (HttpURLConnection) url.openConnection();// 此时cnnection只是为一个连接对象,待连接中 // 设置连接输出流为true,默认false (post 请求是以流的方式隐式的传递参数) connection.setDoOutput(true); // 设置连接输入流为true connection.setDoInput(true); // 设置请求方式为post connection.setRequestMethod("POST"); // post请求缓存设为false connection.setUseCaches(false); // 设置该HttpURLConnection实例是否自动执行重定向 connection.setInstanceFollowRedirects(true); // 设置请求头里面的各个属性 (以下为设置内容的类型,设置为经过urlEncoded编码过的from参数) // application/x-javascript text/xml->xml数据 //application/x-javascript->json对象 //application/x-www-form-urlencoded->表单数据 //这是重点^_^ connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); // 建立连接 (请求未开始,直到connection.getInputStream()方法调用时才发起,以上各个参数设置需在此方法之前进行) connection.connect(); // 创建输入输出流,用于往连接里面输出携带的参数,(输出内容为?后面的内容) DataOutputStream dataout = new DataOutputStream(connection.getOutputStream()); String parm = "storeId=" + URLEncoder.encode("32", "utf-8"); //URLEncoder.encode()方法 为字符串进行编码 // 将参数输出到连接 dataout.writeBytes(parm); // 输出完成后刷新并关闭流 dataout.flush(); dataout.close(); // 重要且易忽略步骤 (关闭流,切记!) System.out.println(connection.getResponseCode()); // 连接发起请求,处理服务器响应 (从连接获取到输入流并包装为bufferedReader) BufferedReader bf = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line; StringBuilder sb = new StringBuilder(); // 用来存储响应数据 // 循环读取流,若不到结尾处 while ((line = bf.readLine()) != null) { sb.append(bf.readLine()); } bf.close(); // 重要且易忽略步骤 (关闭流,切记!) connection.disconnect(); // 销毁连接 System.out.println(sb.toString()); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { // httpURLConectionGET(); httpURLConnectionPOST(); } }
阅读全文
0 0
- java后台模拟浏览器请求--GET/POST
- Java 后台模拟发送 POST GET 请求
- java http get post 各种请求,模拟浏览器请求
- Java后台模拟生成GET/POST请求servlet
- 模拟浏览器post请求 用java写上传文件后台
- java 模拟浏览器进行get和post请求
- java模拟get/post请求
- HttpWebRequest模拟浏览器的GET、POST请求
- Java后台发送Post和get请求
- java后台post和get请求方法
- 使用java模拟Get与Post请求
- Java利用Http 模拟POST、GET请求
- java模拟HTTP post,get请求
- Java模拟Http post、get请求
- Java实现模拟发送POST、GET请求
- java类模拟浏览器post请求
- UWP——HttpClient模拟浏览器的GET、POST请求
- java使用httpclient模拟post请求和get请求示例
- tomcat退出端口冲突
- Bi-shoe and Phi-shoe LightOJ
- HTTP长连接、短连接使用及测试
- html从入门到放弃(6)-入门标签:列表-有序、无序和自定义
- 考前寄语
- java后台模拟浏览器请求--GET/POST
- Luogu 3379(LCA)
- Mongo分组取每组最大的一条记录
- 51nod 1548 欧姆诺姆和糖果
- Spring Boot(七):Spring Security如何启用与禁用CSRF
- PL/SQL批量运行SQL语句
- 微服务部署:蓝绿部署、滚动部署、灰度发布、金丝雀发布
- 垂直的VerticalSeekBar
- zookeeper 之配置管理