全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Http请求长时间等待无结果返回解决办法

Http请求长时间等待无结果返回解决办法

今天遇到一个奇葩的问题,这个程序主要是用于调用接口搜集数据的,但是,发生了不好的事情就是服务器中启动的进程非常多,一直无法结束,没办法只能采用kill的方法,将所有的这部分进程杀掉。

分析了下程序,写了个测试,本地跑依旧长时间等待,无法运行,也不抛出异常,最后发现问题在于发送请求的部分,一直在等待对方服务器响应,由于采用的是keep-alive方式的连接,这里没有采用超时的方式,以至于程序会长时间等待下去。

经过测试发现开启进程过多在于没有设置超时,希望读者注意这部分,否则,容易出现笔者遇到的这种问题。最终的问题应该是接口提供方的异常导致。

public static String sendPost(String url, String param) {
      PrintWriter out = null;
      BufferedReader in = null;
      String result = "";
      try {
        URL realUrl = new URL(url);
        // 打开和URL之间的连接
        URLConnection conn = realUrl.openConnection();
        // 设置通用的请求属性
        conn.setRequestProperty("accept", "*/*");
        conn.setRequestProperty("connection", "Keep-Alive");
        conn.setRequestProperty("user-agent",
            "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
        conn.setConnectTimeout(4000);
        conn.setReadTimeout(4000);
        // 发送POST请求必须设置如下两行
        conn.setDoOutput(true);
        conn.setDoInput(true);
        // 获取URLConnection对象对应的输出流
        out = new PrintWriter(conn.getOutputStream());
        // 发送请求参数
        out.print(param);
        // flush输出流的缓冲
        out.flush();
        // 定义BufferedReader输入流来读取URL的响应
        in = new BufferedReader(
            new InputStreamReader(conn.getInputStream()));
        String line;
        while ((line = in.readLine()) != null) {
          result += line;
        }
      } catch (Exception e) {
        System.out.println("发送 POST 请求出现异常!");
        //e.printStackTrace();
      }
      //使用finally块来关闭输出流、输入流
      finally{
        try{
          if(out!=null){
            out.close();
          }
          if(in!=null){
            in.close();
          }
        }
        catch(IOException ex){
          //ex.printStackTrace();
        }
      }
      return result;
    }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Http请求长时间等待无结果返回  # Http请求长时间无信息返回  # Node.js发送HTTP客户端请求并显示响应结果的方法示例  # 模拟HTTP请求实现网页自动操作及数据采集的方法  # java 中http请求为了防止乱码解决方案  # Java使用HttpClient实现Post请求实例  # 微信小程序 http请求封装详解及实例代码  # Angular的$http的ajax的请求操作(推荐)  # 完美解决node.js中使用https请求报CERT_UNTRUSTED的问题  # 长时间  # 这部  # 的是  # 也不  # 没办法  # 希望能  # 写了  # 谢谢大家  # 在等待  # 解决办法  # 抛出  # 两行  # 主要是  # 应该是  # 发生了  # 器中  # BufferedReader  # PrintWriter  # null  # param 


相关文章: 如何快速搭建自助建站会员专属系统?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何在服务器上三步完成建站并提升流量?  宝塔建站助手安装配置与建站模板使用全流程解析  制作网站的软件免费下载,免费制作app哪个平台好?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  全景视频制作网站有哪些,全景图怎么做成网页?  高性价比服务器租赁——企业级配置与24小时运维服务  郑州企业网站制作公司,郑州招聘网站有哪些?  大同网页,大同瑞慈医院官网?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  建站主机选购指南与交易推荐:核心配置解析  建站与域名管理如何高效结合?  青岛网站建设如何选择本地服务器?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  ,在苏州找工作,上哪个网站比较好?  寿县云建站:智能SEO优化与多行业模板快速上线指南  如何在万网自助建站中设置域名及备案?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  魔毅自助建站系统:模板定制与SEO优化一键生成指南  浅谈Javascript中的Label语句  已有域名如何免费搭建网站?  建站主机选哪种环境更利于SEO优化?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)  网站设计制作公司地址,网站建设比较好的公司都有哪些?  建站主机服务器选购指南:轻量应用与VPS配置解析  如何用西部建站助手快速创建专业网站?  如何用PHP快速搭建高效网站?分步指南  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  专业商城网站制作公司有哪些,pi商城官网是哪个?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  利用JavaScript实现拖拽改变元素大小  IOS倒计时设置UIButton标题title的抖动问题  javascript中的try catch异常捕获机制用法分析  沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?  黑客入侵网站服务器的常见手法有哪些?  html制作网站的步骤有哪些,iapp如何添加网页?  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何生成腾讯云建站专用兑换码?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  如何彻底删除建站之星生成的Banner?  建站之星微信建站一键生成小程序+多端营销系统  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  建站主机CVM配置优化、SEO策略与性能提升指南  清除minerd进程的简单方法  建站之星北京办公室:智能建站系统与小程序生成方案解析  已有域名和空间,如何快速搭建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。