Rest 休息保存获取历史记录

Rest 休息保存获取历史记录,rest,get,Rest,Get,在阅读REST协议时,我看到GET调用不应该更新服务器/应该是幂等的,所以我想:如果我想保存用户搜索(通过GET调用进行的搜索),该怎么办?我的结论是,由于它是一个幂等运算(first和N save在服务器上具有相同的效果),所以在这种情况下,GET调用修改服务器数据是可以的 我说得对吗 谢谢 如果我想保存用户搜索(通过GET调用进行),该怎么办 当然可以,请讲 我的结论是,由于它是一个幂等运算(first和N save在服务器上具有相同的效果),所以在这种情况下,GET调用修改服务器数据是可以

在阅读REST协议时,我看到GET调用不应该更新服务器/应该是幂等的,所以我想:如果我想保存用户搜索(通过GET调用进行的搜索),该怎么办?我的结论是,由于它是一个幂等运算(first和N save在服务器上具有相同的效果),所以在这种情况下,GET调用修改服务器数据是可以的

我说得对吗

谢谢

如果我想保存用户搜索(通过GET调用进行),该怎么办

当然可以,请讲

我的结论是,由于它是一个幂等运算(first和N save在服务器上具有相同的效果),所以在这种情况下,GET调用修改服务器数据是可以的

你的结论很好,你的推理有点软

罗伊·菲尔丁

HTTP并不试图要求GET的结果是安全的。什么 它确实要求操作的语义是安全的,并且 因此,这是实现的错误,而不是接口的错误 或者该界面的用户,如果结果发生任何事情 造成财产损失(顺便说一句,金钱被视为 为了这个定义的缘故)

这里的关键思想是语义上的区别:HTTP统一接口定义GET是

如果请求方法定义的语义本质上是只读的,那么它们被认为是“安全的”;i、 例如,客户机不请求也不期望源服务器上的任何状态更改,因为对目标资源应用了安全方法。同样,合理使用安全方法也不会对源服务器造成任何伤害、财产损失或异常负担

服务器可以按自己喜欢的方式处理请求(例如,包括记录所有这些请求)