HTTP 服务器超时。应该什么时候发送
HTTP server timeout. When should it be sent
我正在编写小型 http 服务器并尝试了解超时问题。
RFC7230不回答强制服务器发送超时(408请求超时)的条件是什么。当客户端发送请求时间过长时是否应该发送?或者,如果有一段时间没有在打开的连接中发送任何内容?应该是什么逻辑?是否有任何标准或行为模型?
整个过程是
服务器等待请求 -> 读取请求 header -> 读取请求 body -> 准备响应 header -> 准备响应 body
因此,如果请求花费很长时间,例如:30 秒,则服务器将 return 响应 header,代码为 408 请求超时
下一种情况是当服务器可以读取整个请求 header 和 body 并尝试处理该请求但无法在一定时间内完成时它将 return 504网关超时或 503 服务不可用。
视情况而定。但规则始终使用 4xx 表示请求错误,使用 5xx 表示服务器错误
此处列出了对选择的 http 代码的简短说明:HTTP 响应状态代码
我正在编写小型 http 服务器并尝试了解超时问题。
RFC7230不回答强制服务器发送超时(408请求超时)的条件是什么。当客户端发送请求时间过长时是否应该发送?或者,如果有一段时间没有在打开的连接中发送任何内容?应该是什么逻辑?是否有任何标准或行为模型?
整个过程是
服务器等待请求 -> 读取请求 header -> 读取请求 body -> 准备响应 header -> 准备响应 body
因此,如果请求花费很长时间,例如:30 秒,则服务器将 return 响应 header,代码为 408 请求超时
下一种情况是当服务器可以读取整个请求 header 和 body 并尝试处理该请求但无法在一定时间内完成时它将 return 504网关超时或 503 服务不可用。
视情况而定。但规则始终使用 4xx 表示请求错误,使用 5xx 表示服务器错误
此处列出了对选择的 http 代码的简短说明:HTTP 响应状态代码