首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在已经发送的TCP RST数据包上重新发送HTTP请求是否正确?

在已经发送的TCP RST数据包上重新发送HTTP请求是否正确?
EN

Stack Overflow用户
提问于 2019-04-16 00:59:21
回答 1查看 208关注 0票数 0

环境:

intranet:两个相同的Web服务器、两个应用服务器、一个第4层交换机(负载均衡器)和一个SSL加速器正在工作,所有客户端(我的用户)都在使用Windows 7和Internet explorer。

我所面对的:

我的应用程序提供的服务通常需要3-7分钟来处理用户发出的HTTP请求,当处理时间超过5分钟时,客户端会自动发送与第一个请求(标头、正文)完全相同的HTTP请求。

我想知道的是:

我使用Wireshark捕获数据包,并知道发生了什么;当请求处理超过5分钟,客户端获得RST数据包并重新发送相同的请求时,服务器端(我还没有完全确定哪一层是确切的可疑层)发送一个RST数据包。

因此,它对一个超过5分钟的请求发出两个相同的重复请求。

我想知道的是:

在已经发送的TCP RST数据包上重新发送HTTP请求是正确的行为吗?我可以配置行为吗??

EN

回答 1

Stack Overflow用户

发布于 2019-04-16 16:37:32

这里的意见各不相同。对于幂等请求(例如HTTP "GET"),通常可以这样做,特别是如果到目前为止还没有从服务器获得任何有效的响应。对于非幂等请求(例如HTTP "PUT"),您应该向用户请求许可。

如果您碰巧知道,在您的场景中,重复请求不会有什么害处,那么只重复请求就可以了。

您应该限制重试次数,以免导致对自己的拒绝服务。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55699131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档