我需要对资源进行异步更新。对于202是否是对补丁的适当响应,是否有明确的声明?
官方文档从来没有提到202,并且似乎假设由于补丁引起的资源更改是同步进行的,但是它从来没有做出明确的声明。
修补程序操作的适当示意图是什么?
最佳答案
我不明白为什么还202是不好的。虽然没有明确提到使用202
,但规范在示例中确实提示了它。
对现有文本文件的成功补丁响应:
http/1.1 204无内容内容位置:/file.txt etag:
“e0023aa4f”
使用204响应代码是因为响应不包含
消息体(使用200代码的响应将具有此消息体)。注意
其他的成功代码也可以使用。202
是一个成功代码,它的定义并不禁止在PATCH
中使用它。
10.2.3 202接受
请求已被接受进行处理,但处理已
未完成。请求可能最终被执行,也可能最终不会被执行
当处理实际发生时,它可能被禁止。
没有从异步服务器重新发送状态代码的工具
像这样的行动。
202号答复是故意不予交付的。其目的是
允许服务器接受其他进程的请求(可能是
面向批处理的过程,每天只运行一次
要求用户代理与服务器的连接持续到
过程已完成。返回此响应的实体
应包括请求的当前状态和
指向状态监视器的指针或用户
可以期待请求得到满足。
只要您以原子方式修补,并且异步请求不会使资源处于半修补状态,那么这应该是好的。