在什么用例中,Web服务可能会接收除CORS之外的OPTIONS请求?

时间:2014-02-14 09:52:19

标签: http cors

我最近实现了一个CORS IDispatchMessageInspector,它通过BehaviorExtensionElement应用于我正在进行的大型项目中的服务,以允许CORS支持(来自于从jQuery Ajax调用调用REST WCF Web服务)。

当前实现拦截所有对指定了CORS行为的端点的OPTIONS方法调用,并使用适当的头(和200)进行响应。目前,只有在CORS请求的情况下,服务才会看到OPTIONS请求,但我不能保证这种情况总是如此。

为了将来的证明和可扩展性,在CORS之外的OPTIONS请求的最常见原因是什么?是否有计划在未来的WC3规范(as this seems to suggest)中扩展此类请求的使用?是否有任何我应该尝试使用的用例?

2 个答案:

答案 0 :(得分:2)

反过来说。

CORS preflight request将是一个OPTIONS请求,其中包含OriginAccess-Control-Request-Method请求标头,您可以通过它来识别它。

任何其他OPTIONS请求就是这样,并且可以由任何客户端以任何理由发送。

答案 1 :(得分:2)

已知WebDAV客户端使用OPTIONS来探测对协议级别和方法支持的支持(参见RFC 4918)。