为什么Chrome/Safari在Access-Control-Request-Headers中包含Origin标头?

mon*_*sur 5 cross-domain cors

这个问题类似于为什么Access-Control-Request-Headers中包含非自定义标头?

在CORS预检请求期间,Chrome和Safari都在Origin标题中包含Access-Control-Request-Headers标题.它们忽略了这个头,因为Origin不需要在相应的Access-Control-Allow-Headers响应头中.虽然CORS规范没有将Origin定义为简单的头,但是还有其他头,例如User-Agent,未定义为简单头,但未包含在Access-Control-Request-Headers中.Firefox在Access-Control-Request-Headers中不包含Origin标头.

所以我的问题是:为什么Chrome和Safari会包含Origin标题Access-Control-Request-Headers,特别是因为它没有效果?我的猜测是因为它们都基于WebKit,但我正在寻找一个能够更深入地解释为什么存在这种行为的答案.