微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

不改变服务器状态但每次都返回一个新资源的 HTTP 方法是幂等的吗?

如何解决不改变服务器状态但每次都返回一个新资源的 HTTP 方法是幂等的吗?

我正在我的服务器中实现 REST 路由,每次都返回一个新的 URL,但不更改任何服务器“状态”。

特别是,我正在写一个类似于这样的路线:

GET/POST example.com/upload-url

此路由的作用是创建一个唯一 URL,然后调用者可以使用该 URL 将文件安全地上传到服务器。具体来说,它将创建一个 S3 presigned put request,并返回它。路由处理程序不会在 S3 中创建文件。您也可以连续调用此 REST 路由 3 次,并且对服务器没有影响。它也不会使服务器返回的其他 URL 无效。

例如,假设您连续调用此路由 3 次:

GET example.com/upload-url

三个回报会有所不同,可能是:

example.com/aaa
example.com/bbb
example.com/ccc

每个返回的 URL 都有自己的过期时间。直到每一个到期,它都是完全有效的。然后您可以使用每个 URL,并且您的文件将被上传。需要注意的是,如果您使用 example.com/aaa 上传一个文件,然后使用 example.com/bbb 上传了另一个文件,那么您使用 aaa 上传文件将被覆盖。

问题是 - 以这种方式定义,GET example.com/upload-url 是幂等的吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。