假设有一个应用程序,其 url 域为 https://srcdomain.com。 并且,还有另一个应用程序 url 域为 https://destdomain.com。
如果其他应用程序必须与源应用程序集成,并允许从 srcdomainapp(在框架内)访问 destdomain 应用程序,则必须在哪个应用程序中添加 cors 标头? 以下配置要添加到 srcdomain 应用程序或 destdomain 应用程序的 httpd.conf 文件中吗?
SetEnvIf Origin "https://(srcdomain|destdomain.com)$" AccessControlAllowOrigin=$0 标头始终设置 Access-Control-Allow-Origin %{AccessControlAllowOrigin}e
没有本地设置来复制问题。需要对此查询的输入。
我认为您感到困惑,因为您使用术语“源”和“目的地”,这通常意味着某些东西从一个地方移动到另一个地方。
正确的术语是“提供者”和“消费者”。提供者是通过 API 提供某些功能的服务,而消费者是使用 API 来消费提供者数据的服务。
最简单的例子是在不同的域上拥有 BE API 服务和 FE 应用程序:
提供商限制对其资源的访问(或者,出于安全原因,存在默认限制,例如 CORS 限制)。
在我的示例中,后端 API 服务需要添加所需的标头以允许来自
app.anotherdomain.com
的请求,或指定通配符并允许来自任何域的请求。
您应该阅读有关此类限制的更多信息:
另外,请务必查看此答案:为什么 iframe 被视为危险和安全风险?