如何捕获 Javascript 中的 404 错误?

2024-02-01

我有一个 HTML 音频元素,并且我将该元素的“src”属性动态设置为存储在局域网上的音频文件。

它是这样工作的:

function setSource(source) {
   audio.src = source;
}

var audio = new Audio();
var source = "http://localhost/folder/file.mp3";
setSource(source);

有时,我指向的源音频文件的链接已损坏,这会导致生成 404 错误并记录到浏览器控制台。

我希望能够捕获 404 错误,以防止它们被记录到控制台。

这就是我尝试的方式:

function setSource(source) {
  try {
    audio.src = src;
  }//end try
  catch (e) {
    //do nothing
  }//end catch
}//end setSource

var audio = new Audio();
var source = "http://localhost/folder/file.mp3";
setSource(source);

不幸的是,我的 try/catch 语句完全没有执行任何操作,错误仍然记录到控制台。难道我做错了什么?

由于我的应用程序的性质,会有很多 404 错误,这是正常的,也是预料之中的,但对于用户来说,它看起来确实不稳定且“丑陋”(如果他们碰巧打开控制台)。

仅供参考:我正在使用谷歌浏览器。


在这种情况下,在浏览器控制台中记录 HTTP 错误是浏览器独有的功能,而不是 Javascript 或任何其他网站代码的功能。

这是无法阻止的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何捕获 Javascript 中的 404 错误? 的相关文章

  • Mocha / Chai Expect.to.throw 未捕获抛出的错误

    我在获取 Chai 时遇到问题expect to throw测试我的 node js 应用程序 测试在抛出的错误上不断失败 但是如果我将测试用例包装在 try 和 catch 中 并对捕获的错误进行断言 它就会起作用 Does expect
  • 重置输入控件的边框颜色 (HTML/Javascript)

    有谁知道使用 javascript 修改输入控件后如何重置它的边框颜色 通过突出显示其中包含不正确或无效数据的字段等来进行验证非常有用 例如 改变边框 document getElementById myinput style border
  • 为什么音频自动播放在 Google Chrome 中不起作用?

    我正在尝试在页面刚刚打开时自动播放音频文件 我的浏览器是谷歌浏览器更新到最新版本 这是代码
  • Node.JS Web 服务器中的安全性

    所以 我正在学习 Node JS 到目前为止我很喜欢它 我已经有几个项目在工作了 我想我可以在其中使用nodejs 不过 我担心安全问题 如果我使用 Node JS http 模块编写自定义 Web 服务器 我是否可能非常容易受到攻击 Ap
  • chrome 中的 Flexbox flex-flow 列换行错误?

    当使用列换行作为弹性流时 它似乎会对 chrome 中的容器尺寸造成问题 HTML 示例 div class root div class outer div class inner A div div class inner B div
  • 在没有全局变量的情况下对多个事件使用 Promise 回调

    我有一个包含在函数中的承诺 我将使用不同的输入参数多次调用该函数 每次承诺解决时 我都会将解决的值推送到存储数组中 当我所有的调用承诺都得到解决后 我将在其他函数中使用这个存储数组 是否有任何干净的方法可以在不使用 全局 变量的情况下进行设
  • 如何在 ES6 类中使用静态变量?

    我正在尝试在 es6 中使用静态变量 我想声明一个静态变量count in Animal类并增加它 但是 我无法通过声明静态变量static count 0 所以我尝试了另一种方法 class Animal constructor this
  • 如何使用 jQuery AJAX 和 JSON 通过 Bootbox 确认表单提交

    我正在使用一个网络应用程序工作Spring MVC 我试图在提交表单之前显示一个确认对话框Bootbox 但我收到 500 内部服务器错误 这是我的表格
  • 动态多个延迟 jQuery Ajax 调用

    使用 jQuery 的延迟模式http api jquery com jQuery when http api jquery com jQuery when 我正在尝试进行多个 jsonp ajax 调用并等待结果 然后再进行下一步 我可以
  • 已安装 cypress npm 软件包,但缺少 Cypress 二进制文件

    大家好 我是 azure devops CI 的新手 我正在尝试通过在作业之间缓存 node modules 来减少管道构建时间 但我遇到了无法解决的错误 我正在使用 cypress 进行测试 这是我的天蓝色管道 Node js Build
  • 使用 CSS 内容添加 HTML 实体

    你如何使用CSS content要添加的属性HTML实体 使用这样的东西只是打印 nbsp 到屏幕而不是不间断空格 breadcrumbs a before content nbsp 您必须使用转义的 unicode Like breadc
  • 如何在 C# 中通过 JavaScript 回调运行 QUnit 测试并获取测试结果?

    在我的几个项目中 我使用 MVC 模式将代码 关注点 分为 3 层 模型层和控制层都在 C 上运行 因此我使用 MSTest 或 NUnit 等测试框架来验证这些层的功能需求 对于视图层 我使用 QUnit 来测试 JavaScript 文
  • 使用 Java 进行 AES 加密并使用 Javascript 进行解密

    我正在制作一个需要基于 Java 的 AES 加密和基于 JavaScript 的解密的应用程序 我使用以下代码作为基本形式进行加密 public class AESencrp private static final String ALG
  • Global.asax 错误处理程序或自定义 IHttpModule 错误处理程序未捕获未处理的异常

    我有一个类 DPCal EventMove 的一种方法 我想限制使用角色的访问 我有一个 Global asax cs 错误处理程序和一个自定义 IHttpModule 错误处理程序 旨在捕获未处理的异常 并将它们 Server Trans
  • 如何使用 Browserify 获取 html 模板

    我正在尝试找出一种简单的方法 在脚本中需要 html 模板 然后从 CLI 运行 browserify 假设我想获取一个模板并将其附加到正文中 index js var template require template html docu
  • 谷歌地图通过骨干javascript返回div标签但不显示

    我已经开始使用地理定位 我可以获得坐标等 我想在地图中显示它 但是当我将地图返回到 div 时 什么也没有显示 现在我查看了 div 地图正在返回 但只是不可见 这是有问题的 div 请注意 这似乎只是一个小地图的链接 a style di
  • 错误:Javascript 上的 [object Object]

    当我在 Firebug 中运行下面的 javascript 时 我不断收到错误 我已经尝试更改多项内容 但它仍然输出错误 我正在使用 api 从 XML 检索信息 然后将其输出到屏幕上 但我不断收到对象错误 有人能看出为什么吗 任何帮助表示
  • jquery .slideToggle() 水平替代方案?

    SlideToggle 正是我想要的 只是我希望幻灯片是水平的 我现在有一个水平隐藏 显示和点击动画 但我想要切换选项 这样 当我单击活动链接时 它将播放反向动画并隐藏自身 最好的方法是什么 您可以使用animate方法 element a
  • JavaScript 反静默技术来指示失败

    当错误确实发生并且函数无法继续执行时 在 JavaScript 中报告错误而不是依赖 null 和 undefined 是一个好方法 我可以想到三种方法 没做什么 抛出异常 assert 这是一个简单的示例场景 一个将传入的金额记入用户帐户
  • 1° 夏令时 Java 和 JS 表现出不同的行为

    假设巴西利亚 GMT 0300 夏令时于 21 10 2012 00 00 00 此时时钟应提前一小时 Java new Date 2012 1900 9 21 0 0 0 Sun Oct 21 01 00 00 BRST 2012 Chr

随机推荐

  • StringConcatFactory 中的策略

    我知道 invokedynamic 指令 我也知道它的实现的基本过程 但当我到达代码时 我无法理解其中的代码StringConcatFactory 能告诉我这六种策略的源码是如何实现的吗 也只完成了默认策略 作为一名大学生 我无法下源代码
  • CountDownTimer 更新和阻塞

    如果正确理解 CountDownTimer 它不会在启动它的活动的单独线程上运行 那么这是否意味着如果我在主活动中启动 CountDownTimer 并且稍后在该活动中阻塞另一段代码 这是否意味着 CountDownTimer 将不再更新
  • Oracle DBMS_LOB.WRITEAPPEND 到 Postgres 转换

    有人可以告诉我如何将下面的 Oracle 代码转换为 Postgresql IF prodNum 1 THEN DBMS LOB WRITEAPPEND pkgFilterNode LENGTH pkgFilter tab
  • 将 geoNear 查询与另一个值查询结合起来

    我有一个使用 node js mongodb 和 mongoose 实现的地理数据 api 我想用两个条件查询我的数据 首先 我使用 geoNear 来获取给定半径内的所有位置 效果很好 其次 我想按类型进一步过滤位置 这是我的架构 var
  • 美化 PHP 上以字符串形式存储的 HTML

    我的变量中有一个字符串 html包含精简的 HTMl 代码 全部在一行中 例如 html div p hello p div 如何美化 漂亮地打印 HTML 以便我的变量变成这样 html div p hello p div 我知道tidy
  • document.form.submit();不会在 Safari 中提交

    我正在使用 JavaScript 函数来提交我的表单 这适用于除 safari 之外的所有浏览器 我不明白为什么 我的 JavaScript 函数看起来像这样 function submitForm var selectBox sel gu
  • 尝试将 log 方法应用于 Python 中的 pandas dataframe 列时出错

    所以 我对 Python 和 Pandas 以及一般编程 非常陌生 但在一个看似简单的函数上遇到了麻烦 因此 我使用通过 SQL 查询提取的数据创建了以下数据框 如果您需要查看 SQL 查询 请告诉我 我将粘贴它 spydata pd Da
  • .NET 跟踪文件不起作用

    我正在尝试使用指向文件位置的 TextWriterTraceListener 来跟踪 Windows 窗体应用程序中发生的奇怪事情 我对其进行了设置 以便应用程序第一次需要在程序运行期间跟踪某些内容时 它会创建跟踪侦听器并注册它 但是 跟踪
  • 使用 Mod_rewrite 将 HTTP 重定向到 HTTPS

    我需要重定向自http test glad redirect TO https test glad start do 主要问题是我需要维护请求中的 POST 参数 我无法使用标准 http 重定向来执行此操作 因为 POST 参数不会按照
  • Git Rebase 期间的 Git Commit - 到底发生了什么?

    我正在寻找一个很好的描述 说明如果在变基期间提交会发生什么 以及如何以一种简单的方式 恢复 这一情况 让我们考虑一个场景 其中一个大型提交被重新设定 在变基期间出现冲突 用户开始合并更改 现在 想象一下这样一个场景 你快完成了 但你没有打电
  • igraph中的社区检测算法有什么区别?

    我有一个大约 100 个 igraph 对象的列表 其中一个典型对象具有大约 700 个顶点和 3500 个边 我想确定其中更有可能存在联系的顶点组 我的计划是使用混合模型来使用顶点和组属性来预测有多少组内联系顶点 有些人可能想对我的项目的
  • 区分 UITableView 编辑状态?

    我一直在尝试区分 UITableView 中的编辑状态 我只需要在点击编辑按钮后处于编辑模式时调用一个方法 因此当您滑入单元格时 您会看到小圆形删除图标 但当用户滑动删除时则不会 无论如何我可以区分两者吗 Thanks EDIT 感谢罗德里
  • 导航栏,标题位于中心,按钮位于右侧

    因此 我尝试创建一个导航栏 其标题位于中心 按钮显示在右侧 正如您所看到的 当我尝试执行此操作时 按钮出现在下一行并位于 div 之外 Fiddle https jsfiddle net ck18vjpn 1 title bar backg
  • 如何声明/忽略缺失的 JSX 类型?

    我想使用SVG use element https developer mozilla org en US docs Web SVG Element use in a tsx file
  • 如何解压方法参数来为其分配类属性?

    我经常做这样的事情 class Box def init self some setup stuff def configure self color ffffff weight 1 empathy 97 angle x 0 angle y
  • 使用 Glide 库显示模糊图像

    我正在尝试使用显示模糊图像Glide而是显示错误图像 我不知道为什么显示错误图像 URL工作正常 但仍然仅显示错误图像 这是我的代码 Glide with context load http www gadgetsaint com wp c
  • 如何解决此错误 命令 PhaseScriptExecution 失败并出现非零退出代码

    I hade changed my Mac to MacBook m1 and my Xcode V is 12 4 my project run normally on simulator but doesn t on the real
  • 如何从列表中删除整数? [复制]

    这个问题在这里已经有答案了 我需要从整数数组列表中删除整数 我对字符串和其他对象没有问题 但是当我删除时 整数被视为索引而不是对象 List
  • 使用 d3.js 绘制半实心圆

    我正在尝试用 d3 js 创建一个半实心圆 就像this http www indezine com products powerpoint learn shapes images halfcirles2010 8 jpg 我没有找到任何如
  • 如何捕获 Javascript 中的 404 错误?

    我有一个 HTML 音频元素 并且我将该元素的 src 属性动态设置为存储在局域网上的音频文件 它是这样工作的 function setSource source audio src source var audio new Audio v