代理服务器负责重复请求


Proxy server responsible for duplicate requests?

我有一个PHP脚本,通过GET在URL中基于参数进行MySQL插入查询。我今天注意到,两个用户似乎来自同一个局域网都有重复的记录,第一个记录的IP解析为proxy.organization.tld,另一个记录具有相同的值,几分钟后用不同的IP地址记录。

我猜这与代理服务器发出HTTP请求并可能缓存内容有关。有人有什么想法或策略来处理这个问题吗?我想防止重复条目。

谢谢。

在每个url后面添加一个唯一的值。这样,如果代理服务器"重新调用"url,您可以检测到它是一个重复的调用。

存在不需要的重复插入还有其他原因。例如,浏览器可以预取页面,爬行器可以跟踪它不应该跟踪的链接。

如果GET请求修改数据,则存在设计缺陷。GET应该只用于读取数据,POST应该用于修改数据。任何浏览器、代理或爬行器都知道POST请求可能有副作用,并且会采取一切预防措施不重复它,而GET请求则被认为没有任何副作用。因此,可以根据需要重复或缓存它以提高性能。