条件请求是包含一个或多个指示在将方法语义应用到目标资源之前进行前提测试的头字段的HTTP请求。本文档定义HTTP/1.1条件请求机制的结构、语法表示法和定义在RFC7230的一致性标准。

    条件GET请求对HTTP缓存更新(RFC7234)是最有效的机制。条件语句也可以被应用于状态改变方法,如PUT和DELETE,以防止“更新丢失”问题:一个客户端意外的复写了另一个并行客户端已经执行的工作。

    条件请求先决条件是基于目标资源整体状态(它的当前值集合)或在先前包含的表示中观察到的状态(在那个集合中的一个值)。一个资源可能有多个当前表示,每一个都他自己的观察状态。条件请求机制假设如果服务器打算利用条件语句,请求与“被选表示”的映射(RFC7231,第3节)将是随时间一致。无论如何如果映射是易变的,并且服务器不能选择适当的表示,那么先决条件判断不满足时不会造成伤害。

    本规范定义的条件请求前置条件(第3节)在适用于接收者(第5节)时按其优先顺序(第6节)进行评估。