PUT带有可选参数

时间:2015-01-12 15:30:51

标签: web-services rest http put

我必须使用PUT作为发送更改的方法来实现Web服务。此服务用于更改配置。因此,例如,如果我将{"varA":true}发送到url/configurationchage,则会设置相应的变量,如果我发送{"varB":true},则会更改varB而不会影响varA。< / p>

我总是认为PUT(并且搜索谷歌似乎我是对的)只是覆盖资源(或者如果不存在则创建它)。我认为这意味着我总是要发送所有变量,否则将删除未发送的变量。那么,这个Web服务的行为是否正确?

以示例

PUT {"varA":true}
Resource content: {"varA": true}

PUT {varB:true}
  • 发生: Resource content: {"varA": true, "varB":true}

  • 我认为应该发生的事情: Resource content: {"varB":true}

1 个答案:

答案 0 :(得分:2)

不,不是。您可能希望查看PATCH方法(请参阅http://greenbytes.de/tech/webdav/rfc5789.html