Ruby on rails Rails-仅当客户端收到响应时提交事务

Ruby on rails Rails-仅当客户端收到响应时提交事务,ruby-on-rails,Ruby On Rails,所以,超级怪异的用例 基本上,客户端创建对象并将其同步到服务器。服务器将它们持久化,并返回具有UID的同一对象。当客户端获取UID对象时,它会删除客户端版本并保存服务器版本 我担心客户端会发送对象,而在服务器验证时,会断开连接。然后,当客户端再次发送对象时,我们有重复的 我可以生成一个客户机ID来避免这种情况,并将其持久化到服务器对象,但我正在寻找一种方法,仅在客户机成功接收响应时持久化对象,因此我们知道它不会重新发送请求 我在谷歌上搜索了一下,但什么也没找到。有办法做到这一点吗?因此,正如我所

所以,超级怪异的用例

基本上,客户端创建对象并将其同步到服务器。服务器将它们持久化,并返回具有UID的同一对象。当客户端获取UID对象时,它会删除客户端版本并保存服务器版本

我担心客户端会发送对象,而在服务器验证时,会断开连接。然后,当客户端再次发送对象时,我们有重复的

我可以生成一个客户机ID来避免这种情况,并将其持久化到服务器对象,但我正在寻找一种方法,仅在客户机成功接收响应时持久化对象,因此我们知道它不会重新发送请求


我在谷歌上搜索了一下,但什么也没找到。有办法做到这一点吗?

因此,正如我所想,我的回答确实表明我对HTTP的工作原理缺乏了解。我怀疑这项技术不可能实现——事实并非如此——但确实存在一个我应该解决的潜在问题

正确的答案是在客户机上生成一个id,该id也存储在数据库中。原因是这使得请求成为幂等的,也就是说,客户机可以任意多次重新发送相同的请求,而不会扰乱服务器

每当服务器收到创建新对象的请求时,它只需检查发送的客户端ID。如果该对象已经存在,不要再创建它,只需返回服务器生成的对象即可。简单