我们使用自己的 来显示内容。
SCOPE 测试404,500等HTTP状态码的问题。向已知出错的URL发送请求,但无法进行响应,除非使用代理。
但是通过覆盖srcdoc属性,我们可以 拦截这些请求,并对它们进行操作。
这包括但不限于:知识库获取失败、动态间无响应、退出预览等场景。
在代码中,我们检查了关于网络连接的问题,例如:
1. 使用navigator.onLine检查离线状态
2. listening for online/offline 事件
3. 通过fetch API 和响应查看状态码。
然而,CSp(内容安全策略)限制JavaScript使用fetch或XMLHttpRequest,对于 HTTL请求则更加困难。因此,我们考虑代理策略,例如:
1. 使用去除网页中的敏感信息,仅保留JSON操作
2. 明确规定可以在哪些域下訪問,但仍无法直接检查跨来源错误。

然而, 大多数情况下,这是不可能的,因此我们使用代理策略,例如:
使用一个中间服务器来绕过链接,中间服务器Package 安装 ,然后从中提取相关信息,但需要确保此方法不被CSP禁止。
CSP不允许 从任何未知域请求或通过用户输入的方式访问特定 URL,除非该来源在其策略中明确允许。
其中一个常见问题是:某些页面可能被限制访问,或某些域名下的资源无法加载。
在使用 iframe 且srcdoc属性的情况下,我们可以在内容中直接修改 HTML,例如:
const iframe = document.createElement('iframe');iframe.srcdoc = 'Hello World
';document.body.appendChild(iframe);现在,如果我们在 iframe 内部访问一个资源,但无法定位,我们可能无法处理 404 或其他HTTP错误,除非明确定义一个代理机制来处理。
在开发模式下,这可能不是大问题,但在生产模式下,用户可能遇到诸如资源加载失败、跨来源限制等问题。
一种策略是通过在服务器端处理绕过方式来隐藏敏感信息,但出于演示目的,我们保留原内容。
