- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我发现这个案例很有趣whatwg规范:
- If evaluationStatus is an abrupt completion, then:
- If rethrow errors is true and script's muted errors is false, then:
- Clean up after running script with settings.
- Rethrow evaluationStatus.[[Value]].
- If rethrow errors is true and script's muted errors is true, then:
- Clean up after running script with settings.
- Throw a "NetworkError" DOMException.
- Otherwise, rethrow errors is false. Perform the following steps:
- Report the exception given by evaluationStatus.[[Value]] for script.
- Clean up after running script with settings.
- Return evaluationStatus.
我感兴趣的是你如何理解:抛出一个“NetworkError”DOMException。
实际上,如果我们将所有错误都静音,谁会理解为什么会在这里引发错误,以及为什么会引发此错误?她出现在这里的原因是什么?
最佳答案
TLDR:这是同源策略 (SOP) 安全限制。
该部分中的链接可带您了解更多信息。步骤 1.2 有 a link to here其中指出:
A boolean which, if true, means that error information will not be provided for errors in this script. This is used to mute errors for cross-origin scripts, since that can leak private information.
如果你看一下规范,muted errors
当从被视为与加载脚本的脚本跨源的源加载给定脚本时,会为给定脚本设置标志。
核心问题是<script>
(和 importScripts
)可以从任意来源加载执行代码。 但是,如果您从跨源位置加载脚本,重要的是如果它加载失败,您将无法知道它失败的原因,因为安全原因。同样,如果您运行 fetch()
要加载远程 URL,您对请求获得的响应数据的了解非常有限。
至于为什么,这种行为最常在使用 onerror
时遇到。处理程序。 The onerror
MDN docs have a note这导致 Firefox bug 363897和 this blog post describing the security issue .
问题的核心是,浏览器对您可以从跨域请求中获取哪些信息以及不允许哪些信息进行严格的限制。如果您能够加载跨源 URL,然后拦截异常,则您可能会获得有关正在加载的 URL 内容的信息,这正是同源策略旨在防止的情况。那里的博客文章有更多信息。
关于javascript - 为什么在静音错误模式下会抛出 NetworkError?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59132566/
我已经尝试使用这两种方法(“标准结帐”和“一体化 SDK”)来实现 Paytm,但是我的交易页面或 Paytm 应用程序永远不会为付款打开,并且我在 onActivityResult 中收到 netw
我发现这个案例很有趣whatwg规范: If evaluationStatus is an abrupt completion, then: If rethrow errors is true and
总体而言,我在 javascript 和 Web 开发方面缺乏经验。我正在从事的项目是一般公司培训计划的一部分。我们已被指示使用 Google Chrome 作为主要测试浏览器。 本质上,我正在编写一
当我使用aurelia-fetch-client将json数据发布到服务器时,出现此错误“尝试获取资源时出现TypeError:NetworkError”。我认为您的回答对我非常有用。 post.ht
我有基于枚举 NetworkError 打印网络错误的基本功能。看起来像这样: void HttpClient::HandleNetworkError(QNetworkReply::NetworkEr
我正在用 Elm 构建我的第一个网络应用程序,我遇到了一个问题,当我向本地服务器发出获取请求时,Elm 说它是“NetworkError”,即使浏览器控制台说它有效。 我做了一个最小的例子如下: 服务
我有相当多的使用 React 构建网络应用程序的经验,但我想学习 Elm。几天来,我一直在努力解决 HTTP 请求问题。 我在 localhost:8080 运行一个 Elm 应用程序,在 local
在 Chrome 的 JavaScript 控制台中,如果我运行这个: var that = new XMLHttpRequest(); that.open('GET', 'http://this_i
我正在使用 jquery 和 javascript 以及使用 jquery 插件开发一个客户端项目。我们的教授为我们提供了一个 proxy.php 文件,用于提取运行 Web 应用程序所需的数据。我使
我发现了很多与我的问题类似的问题,但我没有得到解决方案,这就是我在这里问的原因。 我刚刚开始学习使用 React 进行前端开发。我为在不同端口运行的前端和后端制作了单独的应用程序。 后端:运行于 in
我想研究一下使用 haskell 进行后端和 elm 进行前端的 Web 开发。所以我写了这两个简单的“hello world”代码代码片段 榆树: import Html exposing (..)
我在 firebug 中遇到错误: “NetworkError: 404 Not Found - (removed)/style.css” 这是什么意思,我需要做什么? 谢谢! 最佳答案 HTTP 4
我遇到了这个问题: Response { type: "cors", url: "http://localhost:3000/api/marks", redirected: false, status
我正在尝试通过 javascript 删除 Google 联系人。根据我定义的 Google Contacts api v3: scope to https://www.google.com/m8/f
我正在创建一个 Android React Native 应用程序,一切似乎都运行良好,除非我尝试调试该程序。当我尝试执行此操作时,该应用会变成空白屏幕,并且 Chrome 控制台会出现此错误: 未捕
下面是我们的 Rails 3.2 应用程序中的 js 代码,用于响应 id 以“order_order_items_attributes”开头的字段的更改: $(function (){ $(
我正在使用 express、fetch 和 firefox。这是代码 async updateTutorial() { const requestOptions = { method:
我正在使用 express、fetch 和 firefox。这是代码 async updateTutorial() { const requestOptions = { method:
问题: [NetworkError] 在 Angular SSR 控制台中没有附加信息。 image of console output 注:它似乎没有破坏代码 环境信息: Angular 8.1 S
我编写了一个使用 getJSON 的代码(见下文)。 FireBug 返回以下错误消息: "NetworkError: 500 Internal Server Error - http://local
我是一名优秀的程序员,十分优秀!