如何从跨域 iframe 捕获(初始化)错误?

How to capture (initialisation) errors from a cross-domain iframe?

我正在设置一个微前端解决方案,其中包含驻留在主 window 中的主要集成应用程序和一堆带有服务的 iframe(子应用程序)。此服务是 SPA,但不是必需的,由其他域提供服务,但我可以控制它们。主应用程序需要从底层服务获取一些配置,它的工作方式如下 - 几个嵌入的 url 集成到 index.html 中,主应用程序知道要加载什么,然后它需要通过 postMessage [=17] 等待事件=],每个 iframe 一个。

这里的问题是,主应用程序不知道在初始化阶段 iframe 内是否出现问题:服务由于不同原因而关闭,应用程序未加载到 iframe 内,或者应用程序在 iframe 中丢失了与服务器的连接或 JS 语法错误。检测它的唯一方法就是使用超时,但这不是最好的用户体验。例如,用户在看到错误之前会等待 30 秒。

是否有任何可能的方法可以从主 window 访问 iframe?可能是通过使用 CORS? XHR 请求很清楚,但我还没有找到有关 iframe 和 CORS 的信息。

Are there any possible ways to gain an access to iframes from the main window?

postMessage,您已经在使用。

May be by using CORS? It's clear for XHR requests but I haven't found info regarding iframes and CORS.

您不能使用 CORS 通过框架授予跨源访问权限。