在PUT请求之后,在客户端更新可计算字段的正确方式是什么



我有一个视图模型,它由以下三个字段组成:

  • 开始日期
  • EndData
  • 状态

StartDateEndDate字段存储在数据库中,可以在UI上进行编辑。Status字段是在服务器端计算的,并且是只读的(它取决于两个日期,但此逻辑可以更改)。

当我在客户端更改日期并发送PUT请求时,我希望Status也能在我的页面上更新。我看到了如何实现这一点的几个选项:

  1. 立即在客户端上更新状态。这对我来说不太合适,因为我需要复制已经是域模型一部分的状态确定逻辑。

  2. 更新后,使用GET请求手动重新读取模型。例如,如果我收到205 Reset Content响应,就会发生这种情况。

  3. 在PUT请求的响应中返回新的状态或整个模型。可能是一个选项,但据我所见,建议返回200 OK204 No Content状态。

取决于Status的含义。如果需要显示PUT是否成功,则可以在响应上更新Status。如果您需要额外的信息,那么明智的做法是发出另一个GET请求。

最新更新