获取请求在 Firefox 浏览器上被阻止,显示“NS_BINDING_ABORTED”

Gim*_*a23 6 wordpress firefox http fetch

我正在尝试在我的 WordPress 网站中PUT使用发送请求。fetch API在 Google Chrome 中使用时,请求正常运行,没有任何问题。但在 Firefox 中,请求被阻止,如下图所示,NS_BINDING_ABORTED控制台中显示。控制台的响应选项卡中也没有数据。(我使用的是最新版本Firefox 92.0(64位))。本地主机和托管站点都会出现问题。

在此输入图像描述

在对这个问题进行了大量搜索之后,我尝试过:

  1. 更改 Firefox 的设置以关闭Enhanced Tracking Protection, 关闭HTTPS-Only Mode
  2. Fetch请求更改为AJAX请求。
  3. 添加manifest.json文件storage",*://localhost/*
  4. 添加polyfills
  5. 最后,在参考此答案后,我尝试在响应中添加Cache-Control: no-cache, must-revalidate, max-age=0和标头。Expires:

仍然没有解决这个问题。总之,请求被火狐浏览器阻止,我无法找出原因。任何帮助表示赞赏!

Sco*_*eke 2

当我无意中在触发提取的同一事件中发生页面刷新时,我遇到了这种情况。event.preventDefault()我通过在事件中添加一个来修复它。该网站加载速度如此之快,以至于很难真正理解刷新,但它在其他浏览器中悄然发生,并且 Firefox 明确指出了这一点。下面是导致它的代码:

\n
<form>\n  <label htmlFor="username">Username</label>\n  <input type="text" id="username" autoComplete="webauthn"></input>\n  <button\n    id="register"\n    onClick={(evt) => {\n      # The below line stops the click from submitting the form and was the fix:\n      evt.preventDefault()\n      # fetch was called within the register function:\n      register().catch((err) =>\n        console.error("Error performing register:", err)\n      )\n    }}\n  >\n    Register\n  </button>\n</form>\n
Run Code Online (Sandbox Code Playgroud)\n

事后看来,很清楚为什么向空表单添加按钮会刷新(它正在提交它),但是 \xe2\x80\x8d\xe2\x99\x82\xef\xb8\x8f\xe2\x80\x8d\xe2\x99\ x82\xef\xb8\x8f

\n