我正在设计一个服务的资源,它有一组可变属性和一组不可变属性(例如,status
是由服务生成的,客户端无法更改)。
我需要在响应 GET
请求时包含它,但如果有人使用 PUT
请求发送资源,我不确定该怎么办。
强制调用者知道哪些属性是不可变的感觉不对,但默默地丢弃更新也不正确。对 PUT
请求做出更新后再将更新后的资源返回给调用者可能会解决问题,但这并不完美,因为调用者不应该进行其请求和服务响应之间的差异比较以查找是否接受了某个属性。
您对正确的前进方式有什么想法吗?
P.S. 我查看了如何更新REST资源?,但与此问题不同,并促进了过于啰嗦的API设计。