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

发布时间 - 2026-01-11 00:50:47    点击率:

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 


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


相关推荐: 如何在Windows 2008云服务器安全搭建网站?  百度输入法ai组件怎么删除 百度输入法ai组件移除工具  JS经典正则表达式笔试题汇总  如何在自有机房高效搭建专业网站?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  Laravel如何生成API文档?(Swagger/OpenAPI教程)  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  浅谈Javascript中的Label语句  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  西安专业网站制作公司有哪些,陕西省建行官方网站?  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】  Python并发异常传播_错误处理解析【教程】  如何正确选择百度移动适配建站域名?  如何在景安服务器上快速搭建个人网站?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  油猴 教程,油猴搜脚本为什么会网页无法显示?  北京的网站制作公司有哪些,哪个视频网站最好?  如何快速搭建支持数据库操作的智能建站平台?  Laravel Blade模板引擎语法_Laravel Blade布局继承用法  教你用AI将一段旋律扩展成一首完整的曲子  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  Windows Hello人脸识别突然无法使用  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  免费网站制作appp,免费制作app哪个平台好?  活动邀请函制作网站有哪些,活动邀请函文案?  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  WEB开发之注册页面验证码倒计时代码的实现  如何登录建站主机?访问步骤全解析  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  ,南京靠谱的征婚网站?  iOS UIView常见属性方法小结  如何在Windows虚拟主机上快速搭建网站?  如何获取上海专业网站定制建站电话?  如何快速生成橙子建站落地页链接?  如何在万网ECS上快速搭建专属网站?  Java遍历集合的三种方式  如何选择PHP开源工具快速搭建网站?  Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  Laravel如何实现文件上传和存储?(本地与S3配置)  如何在香港服务器上快速搭建免备案网站?  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  无锡营销型网站制作公司,无锡网选车牌流程?  JS实现鼠标移上去显示图片或微信二维码  jQuery validate插件功能与用法详解  网站制作软件免费下载安装,有哪些免费下载的软件网站?