【问题标题】:will http request timeout when server hold the connection for a long time?当服务器长时间保持连接时,http请求会超时吗?
【发布时间】:2014-07-04 00:05:11
【问题描述】:

当一个http请求发送到服务器(例如java web服务器)时, 并且服务端长时间持有请求,不发回响应,会不会超时?

我搜索http超时,找到408,我不认为408是我描述的超时。

如果发生超时,我可以设置这个超时值吗?在服务器还是客户端?

【问题讨论】:

    标签: java http networking timeout


    【解决方案1】:

    如果您设置了读取超时,它将超时。如果你没有,它不会。超时变成 SocketTimeoutException,而不是 HTTP 错误代码。没有 HTTP 错误代码。没有可从中获取错误代码的 HTTP 响应。这就是为什么会有超时。您可以使用 URLConnection.setReadTimeout() 设置超时。

    【讨论】:

    • 所以这个超时时间是由客户端控制的,而不是服务器。
    • @regrecall 读取超时由执行读取的人控制。
    猜你喜欢
    • 1970-01-01
    • 2023-03-11
    • 2020-04-09
    • 2012-04-09
    • 1970-01-01
    • 2020-08-27
    • 1970-01-01
    • 2017-02-12
    • 2014-09-22
    相关资源
    最近更新 更多