1

假设我有一个 REST 接口,其中包含一个名为Jobs的资源,该资源具有Properties。我会有一个如下所示的界面:

GET|POST|PUT|DELETE /jobs/:id
GET|POST|PUT|DELETE /jobs/:jobId/properties/:id

现在,让我们假设我想要执行我想要执行该作业。执行不是真正的资源。它们本质上是您想要告诉服务器对Jobs采取行动的命令。

从 REST 角度来看,执行此操作的最佳接口是什么?我提出的选项:

PUT /jobs/:id/execute
PUT /jobs/execute/:id
PUT /commands/execute_job/:jobId
POST /jobs/:id/executions

但我不知道哪个最好。另外,我不知道是否PUT正确。我建议PUT是因为该execute命令最终会修改Job资源上的一些数据。我的最后一个选项会execute变成一个资源,就像我正在创建一个新的执行一样,但这感觉不对,因为它不像我将有 GET/PUT/DELETE 动词。

这样做的 REST 方法是什么?

4

1 回答 1

1

我做了一些研究,发现我指的是一个 REST 控制器(来自 DOCUMENT、COLLECTION、STORE、CONTROLLER)分类。

在这种情况下,@Jon 是正确的。我的命令的最佳表示是:

POST /jobs/:id/execute
于 2013-06-13T02:11:30.170 回答