将 CORS 预检请求链接到其目标资源意味着什么

What does it mean for a CORS preflight request to be chained to its target resource

我正在为 Jetty Servlet 配置 CORS,发现某些 XHR 请求在预检时被拒绝。我已经设置了 Access-Control-Allow-Methods 和 Access-Control-Allow-Headers,并且根据 CrossOriginFilter 的 Jetty 文档,默认的 Access-Control-Allow Origin header 是“*”。所以一切都应该允许通过。

我在查找有关以下信息时遇到问题的另一个过滤器选项:

chainPreflight if true preflight requests are chained to their target resource for normal handling (as an OPTION request). Otherwise the filter will response to the preflight. Default is true.

过滤到 "response to the preflight" 是什么意思?将请求链接到他们的目标意味着什么?我找到的关于此选项的大部分资源都使用完全相同的措辞,并且不提供任何进一步的解释。

this Whosebug response中,作者说:

Notes: CrossOriginFilter has a parameter, chainPreflight, that is set to true by default. This needs to be set to false. This was the key to CORS forwarding POST instead of OPTIONS to SOLR.. Also, order matters!

虽然我没有构建 Solr 应用程序,但我想知道这是否是我的配置出错的地方。任何有助于更好地理解此选项的帮助将不胜感激!

如果 chainPreflight 选项设置为 true(默认情况下),则 CrossOriginFilter 将添加所需的访问控制 headers,并将请求传递到端点以进一步处理。目标端点应该有一些逻辑来处理预检请求。

如果 chainPreflight 选项为 false,则 CrossOriginFilter 将添加所需的访问控制 headers 并直接响应请求。

查看 my blog post 以获得插图。