OPTIONS方法请求关于可用于目标资源的在源服务器或中间中介上的通信选项的信息。这种方法允许客户确定与资源相关的选项和/或要求,或者服务器的功能,而不意味着资源行动。

    一个星号(“*”)作为请求目标(RFC7230,5.3节)的OPTIONS请求应用与服务器通常而不是具体的资源。因为一个服务器的通讯选项一般资源,“*”请求只作为一个“ping”或者“no-op”的方法类型;它没有做超出允许客户端测试服务器能力以外的任何事。例如,这可以被用于测试代理对于HTTP/1.1的一致性(或缺乏)。

    如果请求目标不是星号,当与目标资源进行通讯时,OPTIONS请求应用于可用的选项。

    生成OPTIONS成功响应的服务器应该发送任何可能指示被服务器实现和对目标资源适用的可选特性的头字段(例如,Allow),包括未在本规范中定义的潜在扩展。消息负载体如果存在的话也可能以一种机制或人类刻度的标识描述了通讯选项。对于这样的表示的标准格式没有在本协议中定义,但是可能在将来被定义到HTTP扩展中。如果在响应中没有要发送的负载体,服务器必须生成带有值为“0”的Content-Length字段。

    客户端可能在OPTIONS请求中发送一个Max-Fprwards头字段来定位请求链中的特定接收者(查看5.1.2节)。代理在转发请求时不得生成Max-Forwards头字段,除非那个请求被接收的时候带有Max-Forwards字段。

    客户端生成包含负载体的OPTIONS请求必须发送有效的Content-Type头字段描述表示的媒体属性。虽然本协议没有定义这种负载的任何用途,但是将在的HTTP扩展可能使用OPTIONS主体来进行目标资源的更详细的查询。

    OPTIONS方法的响应不可被缓存。