我准备利用HttpURLConnection实现一个Http的客户端,但我没有找到如何来设置超时时间。
有位大侠指点,让我用TimerTask 来完成,在规定时间以后来自己手动断掉连接。
方法是不错,不过麻烦了一些,不知是否还有其它方法可以利用。
请各位指点。
下面是清华BBS上一个大侠给我回的,请各位继续献计。
我查了关于HttpURLConnection的方法,里面并没有关于设置timeout的方法
然后我又查了关于http协议的rfc2068文档,现摘抄一段如下:
RFC 2068 HTTP/1.1 January 1997
10.4.9 408 Request Timeout
The client did not produce a request within the time that the server
was prepared to wait. The client MAY repeat the request without
modifications at any later time.
这是关于Request timeout的说明,是指服务器在规定的时间内没有响应客户端的请求就产生Request timeout 错误.
由此能不能理解为timeout的时间是由服务器规定的,而客户端不能设置该属性,我看比较理想的解决方案就是手动编写控制连接的时间了可以编写程序在规定的时间内,http连接失败就可以了不知道哪位还有更好的方法。
可以调用HttpURLConnection的setConnectTimeout和setReadTimeout这两个方法
分享到:
相关推荐
在C#中,`TcpClient`类本身并不直接提供连接超时的设置选项。为了实现连接超时,我们需要利用异步编程和`Socket`对象的特性。以下是一个简单的示例代码: ```csharp using System; using System.Net; using System...
提供一个c# socket连接池设计的例子,解决socket并发连接限制的问题,并且提供一种设置连接超时时间的方法,默认连接超时时间是不能设置的,提供了socket网络发送数据的接口.可用于pos小票打印机通讯。
解决问题:delphi D10下(XE8\XE7),DataSnap连接超时设置在android中使用无效,导致不能连接服务器时长时间等待。补丁包带源码及说明。 Datasnap ConnectTimeout android
在Nginx服务器的配置中,超时时间的设置至关重要,因为它关系到服务器对客户端请求的响应速度和系统的稳定性。本文将深入讲解如何在Nginx中配置超时时间,并介绍相关的参数设置。 首先,我们需要了解何时需要设置...
该问题的描述提到,"delphi xe DataSnap连接超时设置无效",这意味着开发者在代码中设置的连接超时值并未按预期工作,可能始终等待连接直至超出默认超时时间,而非预设的时间。这可能导致应用程序在连接延迟或服务器...
在本文中,我们将介绍如何在 WebLogic 中设置 Session 超时时间。 Method 1: 使用 web.xml 文件 在 Web 应用程序中,可以使用 `web.xml` 文件来设置 Session 超时时间。这个文件是 Java Servlet 规范的一部分,...
Socket连接超时是网络编程中经常遇到的问题,特别是在服务器响应慢或者网络不稳定的情况下。本篇将详细讲解Socket连接超时的相关知识点,结合易语言提供的源码例程,帮助你深入理解并解决此类问题。 首先,Socket是...
在C/C++中,超时可以通过定时器(timers)实现,例如`select`、`poll`、`epoll`等系统调用,或者使用第三方库如libevent、libev和Boost.Asio。当超时发生时,程序会收到通知,然后可以选择重新发送请求或者采取其他...
在 Linux 环境下,设置套接字(Socket)连接超时是一件非常重要的事情。下面我们将详细介绍 Linux 下 Socket 连接超时的一种实现方法。 首先,需要创建套接字,并将其设置成非阻塞状态。这是因为在连接时,我们不...
在CXF中,超时通常涉及到两个主要方面:连接超时(Connect Timeout)和读取超时(Read Timeout)。 连接超时是指客户端尝试建立到服务器端的TCP连接时允许的最大时间。如果在这个时间内连接未建立成功,客户端将抛...
在Android平台上进行串口通信是实现设备间交互或者与硬件设备连接的重要手段,尤其是在嵌入式和物联网应用中。本文将详细讲解如何使用C语言在Android系统上进行串口调用,并着重介绍如何设置串口超时以避免程序堵塞...
在本文中,我们将讨论 ora-12170 tns 连接超时问题的解决方案,该问题常见于客户端无法连接到服务器的情况。本文将从三个方面入手,分别是 tns 配置文件、服务器防火墙和路由配置问题。 首先,让我们从 tns 配置...
如果从站出现故障或者响应缓慢,整个系统的通信效率可能会降低,导致连接超时。 1. **从站响应时间 (RESP_TO)**:在S7-1200 PLC的Modbus RTU通信中,`RESP_TO`参数定义了主站等待从站响应的最大时间。默认值为1000...
错误描述:oracle远程连接服务器出现 ORA-12170 TNS:连接超时 错误检查:有很多是oracle自身安装的问题,但是我这里服务器配置正常,监听正常,服务正常,远程可以ping通服务器。 这里主要是防火墙问题,解决办法: ...
本文将详细介绍一种在Windows系统中设置socket连接超时的方法。 ### 一、基本概念 在讲解如何设置socket连接超时之前,我们先来了解一下几个基本概念: 1. **Socket**:是一种用于进程间通信的机制,通过它可以...
在使用Halcon与Gige(GigE Vision)工业相机进行图像采集时,遇到的“连接超时”问题可能是由多种因素导致的。Gige相机是一种基于以太网技术的工业相机,它提供了长距离传输图像数据的能力,但同时也可能受到网络...
// 设置连接超时为30秒 client.setSocketTimeout(30 * 1000); // 设置读取数据超时也为30秒 ``` 这里,`SoapHttpClient`是一个假设存在的类,它扩展了ksoap2的某个基础类,并提供了设置超时的方法。`...
在应用程序中,如果遇到连接超时的错误,可以在程序中修改Connection对象的超时设置,然后打开该连接。 例如: Set Conn = Server.CreateObject("ADODB.Connection") DSNtest = "DRIVER={SQLServer};SERVER=...
在高并发环境中,系统往往面临着连接超时和资源超卖的问题,特别是在电商秒杀或抢购场景中,数据库和缓存系统的压力巨大。本示例针对这些问题,利用Redis的乐观锁机制来提供解决方案。Redis是一种高性能的键值存储...
总之,"C++ TCP客户端非阻塞连接超时测试源码"是一个实用的示例,它展示了如何在C++中处理TCP连接的非阻塞和超时问题,这对于开发高可用性和高性能的网络应用程序至关重要。通过学习和分析这段代码,开发者可以提升...