如何确定每个 HTTP 请求的来源

How to determine who is the origin of every HTTP request

难道来源(Access-Control-Allow-Origin)是由给我发送HTTP请求的脚本文件的服务器决定的吗?


如果我是对的,那么有时我网站的脚本文件可能来自多个服务器。浏览器必须对每个脚本文件的下载位置有一些注释。我在哪里可以找到最新的 chrome 中的这些信息? 另外,我怎么可能有一个网站从服务器 A 接收他的脚本文件并向服务器 B 发送 HTTP 请求(每个服务器都有不同的域),服务器 A 有 Access-Control-Allow-Origin=* 而服务器 B 没有指定Access-Control-Allow-Origin 但一切正常?

如果我错了,我该如何确定谁是 HTTP 请求的来源?

Is it true that the origin (Access-Control-Allow-Origin) determines by the server who gave me the script file that sent the HTTP request?

没有

它允许其他网站上的 JavaScript 运行 从您的网站读取数据,而这些数据通常会被同源策略阻止。

JavaScript 的来源无关紧要。包含 <script> 元素的 HTML 文档的来源加载了重要的 JavaScript。

The browser must have some notes on where each script file was downloaded from. Where Can I find this information in chrome latest?

浏览器开发人员工具的“网络”选项卡。

Also, how is it possible that I have a website that received his script files from server A and sends HTTP requests to server B (each server has a different domain), server A has Access-Control-Allow-Origin=* and server B doesn't specify Access-Control-Allow-Origin but everything is working?

来源由 HTML 文档的 URL 而非脚本确定。

If I'm wrong then how do I determine who is the origin of an HTTP request?

来自 XHR 或 Fetch 的 cross-origin 请求将包含一个 Origin HTTP 请求 header。