【问题标题】:use PUT to generate unique identifier and upload file使用 PUT 生成唯一标识符并上传文件
【发布时间】:2018-06-13 09:54:54
【问题描述】:

我需要使用 REST API 上传文件。 我浏览了一些教程,了解到 POST 用于创建新资源,而 PUT 用于创建/更新资源。

我必须上传一个文件并为其生成一些唯一标识符(url)。 一种方法是 a) 使用 POST 生成新的 url,b) 使用相同的 url 使用 PUT 上传文件。 但是是否可以使用 PUT 将这两个步骤合二为一?

提前致谢

【问题讨论】:

  • 通常您只需发布文件,结果就是唯一标识符。为什么需要一个两阶段流程?
  • 您的单个​​ POST 操作可以同时执行这两个操作,即文件处理(如果需要),并且可以返回上传文件的唯一 ID
  • 太好了,非常感谢,您能举个例子吗?

标签: rest http post put


【解决方案1】:

根据经验:

  1. 如果客户端决定使用什么 URI,请使用 PUT
  2. 如果服务器必须决定 URI,请使用 POST

【讨论】:

    【解决方案2】:

    您可以使用 POST 创建域资源(以文件作为请求正文)并返回 201 位置标头和创建的资源 uri。将其作为单个 POST 执行是非常好的。参考https://en.m.wikipedia.org/wiki/HTTP_location

    【讨论】:

      猜你喜欢
      • 2011-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-20
      • 1970-01-01
      • 1970-01-01
      • 2013-03-12
      相关资源
      最近更新 更多