当前位置: 首页 > news >正文

龙岗网站建设联系电话有赞商城官网登录

龙岗网站建设联系电话,有赞商城官网登录,苏州网站建设网站优化,自己做网站处理图片用什么软件一般使用步骤 使用HttpClient发送请求、接收响应#xff0c;一般需要以下步骤。 HttpGet请求响应的一般步骤#xff1a; 1). 创建HttpClient对象,可以使用HttpClients.createDefault()#xff1b; 2). 如果是无参数的GET请求#xff0c;则直接使用构造方法HttpGet(String u…一般使用步骤 使用HttpClient发送请求、接收响应一般需要以下步骤。 HttpGet请求响应的一般步骤 1). 创建HttpClient对象,可以使用HttpClients.createDefault() 2). 如果是无参数的GET请求则直接使用构造方法HttpGet(String url)创建HttpGet对象即可 如果是带参数GET请求则可以先使用URIBuilder(String url)创建对象再调用addParameter(String param, String value)或setParameter(String param, String value)来设置请求参数并调用build()方法构建一个URI对象。只有构造方法HttpGet(URI uri)来创建HttpGet对象。 3). 创建HttpResponse调用HttpClient对象的execute(HttpUriRequest request)发送请求该方法返回一个HttpResponse。调用HttpResponse的getAllHeaders()、getHeaders(String name)等方法可获取服务器的响应头调用HttpResponse的getEntity()方法可获取HttpEntity对象该对象包装了服务器的响应内容。程序可通过该对象获取服务器的响应内容。通过调用getStatusLine().getStatusCode()可以获取响应状态码。 4). 释放连接。 HttpPost请求响应的一般步骤 1). 创建HttpClient对象,可以使用HttpClients.createDefault() 2). 如果是无参数的GET请求则直接使用构造方法HttpPost(String url)创建HttpPost对象即可 如果是带参数POST请求先构建HttpEntity对象并设置请求参数然后调用setEntity(HttpEntity entity)创建HttpPost对象。 3). 创建HttpResponse调用HttpClient对象的execute(HttpUriRequest request)发送请求该方法返回一个HttpResponse。调用HttpResponse的getAllHeaders()、getHeaders(String name)等方法可获取服务器的响应头调用HttpResponse的getEntity()方法可获取HttpEntity对象该对象包装了服务器的响应内容。程序可通过该对象获取服务器的响应内容。通过调用getStatusLine().getStatusCode()可以获取响应状态码。 4). 释放连接。 官方文档中的示例 //1.获得一个httpclient对象 CloseableHttpClient httpclient HttpClients.createDefault(); //2.生成一个get请求 HttpGet httpget new HttpGet(http://localhost/); //3.执行get请求并返回结果 CloseableHttpResponse response httpclient.execute(httpget); try {//4.处理结果 } finally {response.close(); } 实例代码实战 构建一个Maven项目引入如下依赖 dependencygroupIdorg.apache.httpcomponents/groupIdartifactIdhttpclient/artifactIdversion4.3.5/version/dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-log4j12/artifactIdversion1.7.7/version/dependencydependencygroupIdorg.apache.commons/groupIdartifactIdcommons-io/artifactIdversion1.3.2/version/dependency 实例1普通的无参数GET请求 打开一个url抓取响应结果输出成html文件 实例2执行带参数的GET请求 模拟使用百度搜索关键字java,并保存搜索结果为html文件 import java.io.File; import java.net.URI; import org.apache.commons.io.FileUtils; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.utils.URIBuilder; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; /*** 带参数的GET请求* 两种方式* 1.直接将参数拼接到url后面 如?wdjava* 2.使用URI的方法设置参数 setParameter(wd, java)*/ public class DoGETParam {public static void main(String[] args) throws Exception {// 创建Httpclient对象CloseableHttpClient httpclient HttpClients.createDefault();// 定义请求的参数URI uri new URIBuilder(http://www.baidu.com/s).setParameter(wd, java).build();// 创建http GET请求HttpGet httpGet new HttpGet(uri);//response 对象CloseableHttpResponse response null;try {// 执行http get请求response httpclient.execute(httpGet);// 判断返回状态是否为200if (response.getStatusLine().getStatusCode() 200) {String content EntityUtils.toString(response.getEntity(), UTF-8);//内容写入文件FileUtils.writeStringToFile(new File(E:\\devtest\\baidu-param.html), content, UTF-8);System.out.println(内容长度content.length());}} finally {if (response ! null) {response.close();}httpclient.close();}} } 实例3执行普通的POST请求 无参数的POST请求并设置Header来伪装浏览器请求 import org.apache.commons.io.FileUtils; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils;import java.io.File;/*** 常规post请求* 可以设置Header来伪装浏览器请求*/ public class DoPOST {public static void main(String[] args) throws Exception {// 创建Httpclient对象CloseableHttpClient httpclient HttpClients.createDefault();// 创建http POST请求HttpPost httpPost new HttpPost(http://www.oschina.net/);//伪装浏览器请求httpPost.setHeader(User-Agent, Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36);CloseableHttpResponse response null;try {// 执行请求response httpclient.execute(httpPost);// 判断返回状态是否为200if (response.getStatusLine().getStatusCode() 200) {String content EntityUtils.toString(response.getEntity(), UTF-8);//内容写入文件FileUtils.writeStringToFile(new File(E:\\devtest\\oschina.html), content, UTF-8);System.out.println(内容长度content.length());}} finally {if (response ! null) {response.close();}httpclient.close();}} } 实例4执行带参数的POST请求 模拟开源中国检索java并伪装浏览器请求输出响应结果为html文件 import java.io.File; import java.util.ArrayList; import java.util.List;import org.apache.commons.io.FileUtils; import org.apache.http.NameValuePair; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.CloseableHttpResponse; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils;/*** 带有参数的Post请求* NameValuePair*/ public class DoPOSTParam {public static void main(String[] args) throws Exception {// 创建Httpclient对象CloseableHttpClient httpclient HttpClients.createDefault();// 创建http POST请求HttpPost httpPost new HttpPost(http://www.oschina.net/search);// 设置2个post参数一个是scope、一个是qListNameValuePair parameters new ArrayListNameValuePair(0);parameters.add(new BasicNameValuePair(scope, project));parameters.add(new BasicNameValuePair(q, java));// 构造一个form表单式的实体UrlEncodedFormEntity formEntity new UrlEncodedFormEntity(parameters);// 将请求实体设置到httpPost对象中httpPost.setEntity(formEntity);//伪装浏览器httpPost.setHeader(User-Agent,Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36);CloseableHttpResponse response null;try {// 执行请求response httpclient.execute(httpPost);// 判断返回状态是否为200if (response.getStatusLine().getStatusCode() 200) {String content EntityUtils.toString(response.getEntity(), UTF-8);//内容写入文件FileUtils.writeStringToFile(new File(E:\\devtest\\oschina-param.html), content, UTF-8);System.out.println(内容长度content.length());}} finally {if (response ! null) {response.close();}httpclient.close();}} }
http://www.pierceye.com/news/345068/

相关文章:

  • 公司网站上线的通知抚州营销型网站建设
  • 中国住房城乡和城乡建设部网站小广告文案
  • 做带字头像的网站wordpress 翻页设置
  • 网站横幅js代码公众号如何申请
  • 找网站建设需要问什么软件物联网平台功能
  • 含山县城市建设有限公司网站成都中高风险地区名单最新
  • 鄂州手机网站建设深圳seo网站设计
  • 网站内容的实现方式建筑设计人才招聘
  • 网站做优化效果怎样iis怎么做网站空间
  • 重庆市建设局网站郑州网站建设哪一家好
  • wordpress指定分类广告金融网站排名优化
  • 美妆网站建设方案陕西网络公司网站建设
  • 北京地铁建设的网站深圳建网站兴田德润可信
  • 平台门户网站建设企业战略规划方案
  • 北京网站备案的地址住房和城乡建设部网站质保金
  • 网络营销自学网站腾讯云服务器cvm
  • 建设旅行网站策划书浙江省职业能力建设处网站
  • 网站项目建设的组织机构wordpress做登录
  • 定制杯子岳阳优化营商环境
  • 中学院新校区建设专题网站如何搭建网络教学平台
  • 网站开发课程设计体会房地产查询官网
  • 网站建设 响应式 北京出口外贸网站建设
  • 做网站图片格式做旅游网站的yi
  • 公司网站做二维码网址人防门电气图纸符号大全久久建筑网
  • 电商网站特点中国制造网怎么注册
  • 酒店网站建设便宜酒店设计
  • 东莞网站建设规范新版wordpress编辑
  • 自己的简历网站怎么做工业网页设计欣赏
  • 建设银行苏州官网招聘网站未明潮网站建设保密协议
  • 河南省住房和城乡建设厅查询网站叫外包公司做网站不肯给源代码的