String url = "http://www.baidu.com";//将要访问的url字符串放入HttpPost中HttpPost httpPost= new HttpPost(url);//请求头 放置一些修改http请求头和cookiehttpPost.setHeader("Accept", "application/json");......//如果是HttpPost或者HttpPut请求需要在请求里加参数,//而HttpGet或者HttpDelete请求则可以直接拼接到url字符串后面//向HttpPost中加入参数List<NameValuePair> values = new ArrayList<NameValuePair>();values.add(new NameValuePair("id", "1"));values.add(new NameValuePair("name", "xiaohong"));httpPost.setEntity(new UrlEncodeFormEntity(values, HTTP.UTF_8));  //进行转码//实例HttpClient 并执行带有HttpPost的方法,返回HttpResponse 响应,再进行操作HttpClient httpClient = new DefaultHttpClient();HttpResponse httpResponse = httpClient.execute(httpPost);int statusCode = httpResponse.getStatusLine().getStatusCode();  //返回状态码 ,用来进行识别或者判断访问结果if(statusCode == 200){Instream in = httpResponse.getEntity().getContent();  //要处理该数据流是否为GZIP流}示例代码如下:package cn.dratek.haoyingsheng.manager.client;import cn.dratek.haoyingsheng.manager.util.ResourceUtil;
import net.dratek.browser.http.Cookie;
import net.dratek.browser.http.CookieManager;
import net.dratek.browser.http.URL;
import org.apache.http.*;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpDelete;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpPut;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.protocol.HTTP;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.util.List;public class HttpNetClient {/*** 所有get 请求底层调用方法** @param url 请求url* @return byte[] response data*/public static byte[] doGet(String url) {InputStream in;byte[] bre = null;HttpResponse response;CookieManager manager = CookieManager.getInstance();if (url != null && url.length() != 0) {URL myURL = URL.parseString(url);Cookie[] cookies = manager.getCookies(myURL);HttpGet httpGet = new HttpGet(url);if (cookies != null && cookies.length > 0) {StringBuilder sb = new StringBuilder();for (Cookie ck : cookies) {sb.append(ck.name).append('=').append(ck.value).append(";");}String sck = sb.toString();if (sck.length() > 0) {httpGet.setHeader("Cookie", sck);}//if}//ifhttpGet.setHeader("Accept-Encoding", "gzip, deflate");httpGet.setHeader("Accept-Language", "zh-CN");httpGet.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");try {response = new DefaultHttpClient().execute(httpGet);if (response != null) {int statusCode = response.getStatusLine().getStatusCode();if (statusCode == 200 || statusCode == 403) {Header[] headers = response.getHeaders("Set-Cookie");if (headers != null && headers.length > 0) {for (Header header : headers) {manager.setCookie(myURL, header.getValue());}//for}//ifin = response.getEntity().getContent();if (in != null) {bre = ResourceUtil.readStream(in);}//if}//if}//if} //trycatch (IOException e) {e.printStackTrace();}}return bre;}/*** 所有Post 请求底层调用方法** @param url    请求url* @param values 传递的参数* @return byte[] 返回数据 or null*/public static byte[] doPost(String url, List<NameValuePair> values) {System.out.println("url = " + url);byte[] bytes = null;HttpResponse response;InputStream inputStream = null;CookieManager manager = CookieManager.getInstance();if (url != null && url.length() != 0) {URL myurl = URL.parseString(url);Cookie[] cookies = manager.getCookies(myurl);HttpPost post = new HttpPost(url);if (cookies != null && cookies.length > 0) {StringBuilder sb = new StringBuilder();for (Cookie ck : cookies) {sb.append(ck.name).append('=').append(ck.value).append(";");}//forString sck = sb.toString();if (sck.length() > 0) {post.setHeader("Cookie", sck);}//if}//ifpost.setHeader("Accept-Encoding", "gzip, deflate");post.setHeader("Accept-Language", "zh-CN");post.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");DefaultHttpClient client = new DefaultHttpClient();try {if (values != null && values.size() > 0) {post.setEntity(new UrlEncodedFormEntity(values, HTTP.UTF_8));}response = client.execute(post);if (response != null) {int statusCode = response.getStatusLine().getStatusCode();if (statusCode == 200 || statusCode == 403) {Header[] headers = response.getHeaders("Set-Cookie");if (headers != null && headers.length > 0) {for (Header header : headers) {manager.setCookie(myurl, header.getValue());}//for}//ifinputStream = response.getEntity().getContent();}//if}//if}//trycatch (UnsupportedEncodingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}if (inputStream != null) {bytes = ResourceUtil.readStream(inputStream);}}return bytes;}/*** PUT基础请求** @param url    请求地址* @param values 提交参数* @return byte[] 请求成功后的结果*/public static byte[] doPut(String url, List<NameValuePair> values) {byte[] ret = null;CookieManager manager = CookieManager.getInstance();if (url != null && url.length() > 0) {URL myUrl = URL.parseString(url);StringBuilder sb = new StringBuilder();Cookie[] cookies = manager.getCookies(myUrl);if (cookies != null && cookies.length > 0) {for (Cookie cookie : cookies) {sb.append(cookie.name).append("=").append(cookie.value).append(";");}//for}//ifHttpPut request = new HttpPut(url);String sck = sb.toString();if (sck.length() > 0) {request.setHeader("Cookie", sck);}request.setHeader("Accept-Encoding", "gzip, deflate");request.setHeader("Accept-Language", "zh-CN");request.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");DefaultHttpClient client = new DefaultHttpClient();if (values != null && values.size() > 0) {try {UrlEncodedFormEntity entity;entity = new UrlEncodedFormEntity(values);request.setEntity(entity);} catch (UnsupportedEncodingException e) {e.printStackTrace();}}//iftry {HttpResponse response = client.execute(request);if (response != null) {StatusLine statusLine = response.getStatusLine();int statusCode = statusLine.getStatusCode();if (statusCode == 200 || statusCode == 403) {Header[] headers = response.getHeaders("Set-Cookie");if (headers != null && headers.length > 0) {for (Header header : headers) {manager.setCookie(myUrl, header.getValue());}}//ifHttpEntity entity = response.getEntity();InputStream inputStream = entity.getContent();if (inputStream != null) {ret = ResourceUtil.readStream(inputStream);inputStream.close();}//if}//if}//if} //trycatch (IOException e) {e.printStackTrace();}}//ifreturn ret;}/*** Delete基础请求** @param url 请求地址* @return 请求成功后的结果*/public static byte[] doDelete(String url) {InputStream in;byte[] bre = null;HttpResponse response;CookieManager manager = CookieManager.getInstance();if (url != null && url.length() != 0) {URL myurl = URL.parseString(url);Cookie[] cookies = manager.getCookies(myurl);HttpDelete delete = new HttpDelete(url);if (cookies != null && cookies.length > 0) {StringBuilder sb = new StringBuilder();for (Cookie ck : cookies) {sb.append(ck.name).append('=').append(ck.value).append(";");}//forString sck = sb.toString();if (sck.length() > 0) {delete.setHeader("Cookie", sck);}}//fordelete.setHeader("Accept-Encoding", "gzip, deflate");delete.setHeader("Accept-Language", "zh-CN");delete.setHeader("Accept", "application/json, application/xml, text/html, text/*, image/*, */*");try {response = new DefaultHttpClient().execute(delete);if (response != null) {int statusCode = response.getStatusLine().getStatusCode();if (statusCode == 200 || statusCode == 403) {Header[] headers = response.getHeaders("Set-Cookie");if (headers != null && headers.length > 0) {for (Header header : headers) {manager.setCookie(myurl, header.getValue());}//for}//ifin = response.getEntity().getContent();if (in != null) {bre = ResourceUtil.readStream(in);}}//if}//if} catch (IOException e) {e.printStackTrace();}}return bre;}}

Http 四种请求访问代码 HttpGet HttpPost HttpPut HttpDelete .相关推荐

  1. Http 四种请求访问代码 HttpGet HttpPost HttpPut HttpDelete

    逻辑: String url = "http://www.baidu.com"; //将要访问的url字符串放入HttpPost中 HttpPost httpPost = new ...

  2. postman的四种请求:post,get,put,delete

    四种请求的详解 前言 一.get请求 二.post请求 三.put请求 四.delete请求 前言 之前在做测试的实习的时候用过postman做接口测试,但是以前懵懵懂懂,觉得那是开发才相关的东西,所 ...

  3. 接口测试中模拟post四种请求数据

    转自 作者:隋胖胖LoveFat 链接:https://www.jianshu.com/p/3b6d7aa2043a 来源:简书 一.背景介绍 在日常的接口测试工作中,模拟接口请求通常有两种方法,fi ...

  4. java rest风格传参_SpringMVC的REST风格的四种请求方式总结

    一. 在HTTP 协议里面,四个表示操作方式的动词:GET.POST.PUT.DELETE. 它们分别对应四种基本操作: 1.GET ====== 获 取资源 2.POST ======新建资源 3. ...

  5. java的rest教程_[Java教程]SpringMVC的REST风格的四种请求方式

    [Java教程]SpringMVC的REST风格的四种请求方式 0 2017-08-28 22:00:25 一. 在HTTP 协议里面,四个表示操作方式的动词:GET.POST.PUT.DELETE. ...

  6. Flask框架中的四种请求勾子

    在客户端和服务器交互的过程中,有些准备工作或扫尾工作需要处理,比如: 在请求开始时,建立数据库连接:在请求开始时,根据需求进行权限校验:在请求结束时,指定数据的交互格式: 为了让每个视图函数避免编写重 ...

  7. 硬核!Python 四种变量的代码对象和反汇编分析

    作者 | 大奎 整理 | 阳哥 来源丨Python数据之道 在Python基础的学习过程中,对变量和参数的理解有助于我们从更基础层面了解Python语言的运行.在这个过程中,还是有不少冷门和细节的地方 ...

  8. axios队列 vue_(十三 )Vue 封装axios(四种请求)及相关介绍

    Vue 封装axios(四种请求)及相关介绍 首先axios是基于promise的http库 promise是什么? 1.主要用于异步计算 2.可以将异步操作队列化,按照期望的顺序执行,返回符合预期的 ...

  9. Java的四种包访问权限

    Java的四种包访问权限如下: private default protected public 同一类 √ √ √ √ 同一包 √ √ √ 不同包的子类 √ √ 不同包的非子类 √

最新文章

  1. git 忽略指定文件夹的上传
  2. C++中map的用法
  3. 中国教育电视台的iEnglish英语风采秀 为我们揭示了“双减”的本质目标
  4. 百度智能云发布时空数据管理平台,打造一体化数据中台
  5. Python小游戏(小蜜蜂)
  6. java.lang.illegalagr_spring – java.lang.IllegalArgumentException:环境不能为null
  7. How to install JDK on Linux
  8. influxdb java api使用_java使用influxDB数据库的详细源码
  9. golang使用Nsq
  10. Asp.net can do Native Code also can do it(updated)
  11. js 时间戮转换为日期格式
  12. 【idea】两台电脑协同办公
  13. 酒香还怕巷子深?如何打造一个优秀的GitHub开源项目
  14. 做不了爱人,我们做什么
  15. 【电商】电商后台设计—购物车
  16. java服务器开发心得
  17. Android 线程池的使用
  18. 然而马云并没有收购车投网
  19. Python3的安装步骤
  20. STM32F051C8T6控制LED

热门文章

  1. WiresharkTCP的状态 (SYN, FIN, ACK, PSH, RST, URG)
  2. 转载:警惕!!骗人的“培训机构” “北大青鸟”事件
  3. 剑指Offer——跳台阶
  4. 转:Linux设备驱动开发(1):内核基础概念
  5. [deviceone开发]-心形点赞动画示例
  6. ASP.Net 使用SqlBulkCopy批量插入
  7. 解决ng界面长表达式(ui-set)
  8. 通过select选项动态异步加载内容
  9. Linq 左连接 内连接
  10. 京东到家程序员删库跑路 ! 讲一讲 MySQL 数据备份杀手锏 binlog