gpt4 book ai didi

rest - 获取时删除某些内容是 RESTfull 吗?

转载 作者:可可西里 更新时间:2023-11-01 16:09:53 25 4
gpt4 key购买 nike

自然而然的答案当然是否定的,所以为了理解我的意思,请让我解释一下。

我们有一个服务,其中客户端 POST 要执行的作业,但它们不会在发布时执行。相反,我们的服务使用一个 ID 进行响应,客户端可以使用该 ID 通过 GET 执行 job

现在当作业被执行时,它也被删除并且该作业不再可用。

根据我对RESTfull架构的理解,我们的实现不符合REST的思想。

所以我想知道的是,如果不是 RESTfull,我们应该如何重新设计才能成为 RESTfull?只是将我们的 GET 更改为 POST (我不相信,因为我们正在删除一些东西(工作))同时 DELETE 也看起来很奇怪,因为我们正在执行一个 job

with job 我的意思是我们正在从我们的数据库中提供可能大量的数据。

最佳答案

our service responds with an ID which the client may use to execute the job via a GET.

这听起来不像是 RESTful。客户端应PUT 到作业资源,也许将作业状态设置为执行

PUT /jobs/1234
{
"status": "execute"
}

200 OK

客户端稍后可以GET 作业资源来检查状态。也许稍后状态会更改为 completed

GET /jobs/1234

200 OK
{
"id": 1234,
"status": "completed",
"quizzle": "smooth"
}

如果一段时间后系统的某个不同部分删除了已完成 作业,则对作业资源的GET 将导致410 Gone .

GET /jobs/1234

410 Gone

关于rest - 获取时删除某些内容是 RESTfull 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24783326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com