java发送http get请求的两种方式

发布时间 - 2026-01-11 01:20:42    点击率:

长话短说,废话不说

一、第一种方式,通过HttpClient方式,代码如下:

public static String httpGet(String url, String charset)
   throws HttpException, IOException {
  String json = null;
  HttpGet httpGet = new HttpGet();
  // 设置参数
  try {
   httpGet.setURI(new URI(url));
  } catch (URISyntaxException e) {
   throw new HttpException("请求url格式错误。"+e.getMessage());
  }
  // 发送请求
  HttpResponse httpResponse = client.execute(httpGet);
  // 获取返回的数据
  HttpEntity entity = httpResponse.getEntity();
  byte[] body = EntityUtils.toByteArray(entity);
  StatusLine sL = httpResponse.getStatusLine();
  int statusCode = sL.getStatusCode();
  if (statusCode == 200) {
   json = new String(body, charset);
   entity.consumeContent();
  } else {
   throw new HttpException("statusCode="+statusCode);
  }
  return json;
}

二、第二种方式,通过流的形式,贴代码:

  /**
  * 发送http get请求
  * 
  * @param getUrl
  * @return
  */
  public String sendGetRequest(String getUrl)
  {
   StringBuffer sb = new StringBuffer();
   InputStreamReader isr = null;
   BufferedReader br = null;
   try
   {
     URL url = new URL(getUrl);
     URLConnection urlConnection = url.openConnection();
     urlConnection.setAllowUserInteraction(false);
     isr = new InputStreamReader(url.openStream());
     br = new BufferedReader(isr);
     String line;
     while ((line = br.readLine()) != null)
     {
      sb.append(line);
     }
   }
   catch (IOException e)
   {
     e.printStackTrace();
   }
   finally
   {
     fileOperator.closeResources(isr, br);
   }
   return sb.toString();
  }
}

这两种实现方式不同,怎么使用看个人喜好吧,不过我在项目开发过程中,使用流的方式部署在预发机(linux机器)上会出现返回null的情况,但是本地windows却正常访问,而且,换另外一台预发机也能正常获取数据,目前还没有研究出个所以然。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# java  # http  # get  # java模拟http的Get/Post请求  # 并设置ip与port代理的方法  # Java模拟HTTP Get Post请求实现论坛自动回帖功能  # java发送http的get、post请求实现代码  # java实现http的Post、Get、代理访问请求  # Java模拟HTTP Get Post请求 轻松实现校园BBS自动回帖  # java使用httpclient模拟post请求和get请求示例  # 还没有  # 我在  # 也能  # 一台  # 这两种  # 第二种  # 第一种  # 出个  # 上会  # 大家多多  # 看个  # 过程中  # 过流  # client  # httpResponse  # getMessage  # URI  # throw  # URISyntaxException 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  如何正确选择百度移动适配建站域名?  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  如何用AI帮你把自己的生活经历写成一个有趣的故事?  Laravel Docker环境搭建教程_Laravel Sail使用指南  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何构建满足综合性能需求的优质建站方案?  制作旅游网站html,怎样注册旅游网站?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  C语言设计一个闪闪的圣诞树  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  北京网站制作的公司有哪些,北京白云观官方网站?  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  如何快速辨别茅台真假?关键步骤解析  javascript中的try catch异常捕获机制用法分析  什么是javascript作用域_全局和局部作用域有什么区别?  Python面向对象测试方法_mock解析【教程】  ,南京靠谱的征婚网站?  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  Laravel如何集成Inertia.js与Vue/React?(安装配置)  Laravel怎么连接多个数据库_Laravel多数据库连接配置  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  高防服务器租用指南:配置选择与快速部署攻略  教学论文网站制作软件有哪些,写论文用什么软件 ?  Laravel如何实现API资源集合?(Resource Collection教程)  phpredis提高消息队列的实时性方法(推荐)  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  黑客入侵网站服务器的常见手法有哪些?  python中快速进行多个字符替换的方法小结  专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?  html5的keygen标签为什么废弃_替代方案说明【解答】  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  Python数据仓库与ETL构建实战_Airflow调度流程详解  如何在建站主机中优化服务器配置?  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  LinuxCD持续部署教程_自动发布与回滚机制  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Laravel如何与Inertia.js和Vue/React构建现代单页应用  Laravel如何配置任务调度?(Cron Job示例)  Swift中循环语句中的转移语句 break 和 continue  零服务器AI建站解决方案:快速部署与云端平台低成本实践  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  海南网站制作公司有哪些,海口网是哪家的?  Laravel PHP版本要求一览_Laravel各版本环境要求对照  昵图网官网入口 昵图网素材平台官方入口