|
|
1
19
如果您正在使用HTTP,那么要做的适当的事情就是始终遵循HTTP规范,原因只是为了让理解该规范的人能够 功能正常 . 只有在有前提条件的情况下才应使用412 (例如,如果匹配)导致版本匹配失败,而 如果实体会导致冲突,则应使用409 (HTTP规范本身在 definition of 409 ) 因此,不发送etags的客户机不会期望412。相反,发送etags的客户机不会理解是etags导致409。 我会坚持一种方法。您说“数据库模式不能更改”,但这并不能阻止您(在HTTP服务器层)从数据库表示中提取版本并将其放入ETag,然后在进入过程中,获取if-match头并将其放回version字段。 但是,完全在实体体内进行并不被禁止。它只需要您解释这个概念以及它是如何工作的,而对于ETag解决方案,您只需要向人们指出HTTP规范。
编辑:
版本标志不必是当前资源的散列值;版本是可以接受的。
|
|
|
Jakob · 烧瓶REST-API:响应中的数值错误 2 年前 |
|
|
Omar Ahmed · 可以仅使用(CSRF)令牌进行身份验证吗 2 年前 |
|
|
Hyper10n · 从T-SQL查询内部管理HTTP会话 2 年前 |
|
|
Lavonne Riley · 无法获取数据并将其添加到谷歌工作表中 2 年前 |
|
|
testtt · 微服务REST调用和数据库事务 2 年前 |
|
|
JoeBim · PHP中的中程API 2 年前 |