0

想象一个用于请求文件的系统是从一个特定的 URL 上传的。

http://example.com/{accountId}/files

对该端点进行 POST 以启动文件传输。但是考虑到文件可能很大,并且该过程可能需要一段时间,服务器会返回 202 响应。

一段时间后,执行 GET 以

http://example.com/{accountId}/files/{fileId}

如果该文件的返回状态仍处于挂起状态,那么我们想告诉服务器再次尝试传输,因为我们认为它已超时。

我感到困惑的是适当的 REST 端点/HTTP 动词将触发服务器重新处理该文件。

4

1 回答 1

1

我建议添加一个包含图像处理器状态的“处理器”资源:

http://example.com/{accountId}/files/{fileId}/processor

一个 GET 可以像这样返回 JSON:

{
  "status": "Pending"
}

然后,客户端可以通过向处理器资源发出空 POST 来重新启动处理器。此外,客户端可以使用服务器记录的“原因”值发布 JSON(而不是仅仅发布一个空的 POST)。

基本资源 /{accountId}/files/{fileId} 可以包含指向处理器资源的链接,这样客户端就不必使用该信息进行硬编码。

于 2015-02-16T23:13:53.640 回答