【问题标题】:Design suggestion for REST PUT without body data无正文数据的 REST PUT 设计建议
【发布时间】:2014-03-12 15:27:09
【问题描述】:

我正在设计一个 REST API,它需要创建一个只有两列的数据库条目,这两列是关键。因为ID是事先知道的,所以我喜欢用PUT,比如

PUT /lists/black/1.1.1.1

将 IP 列入黑名单。要删除它,我使用

删除/lists/black/1.1.1.1

问题是,许多 Web 服务器不允许 PUT 没有正文(附加数据参数),并且 CURL 在执行没有参数的 PUT 请求时默认不发送 content-length: 0。

你建议我如何设计这样的 API?

【问题讨论】:

    标签: api rest


    【解决方案1】:

    我已经实现了一个带有 PUT 的 REST API,没有任何内容。它工作正常。这是在 Apache Tomcat v7 上

    对于 cURL,使用标题选项-H "Content-Length: 0"

    【讨论】:

      【解决方案2】:

      您可以执行以下操作以发送不带正文的 put:

      this.httpClient.put<string>(`url/user/reset-password/${password}`, {});
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-05
        • 2012-01-27
        • 1970-01-01
        相关资源
        最近更新 更多