javascript - 我如何捕获类型为 "document/html"的请求中的错误

标签 javascript jquery

有没有办法可以监听“文档”类型的请求并通过捕获它来显示错误。

在 safari 中,我看到“文档”选项卡下的请求,而在 Mozilla 中,我看到“HTML”下的请求

enter image description here

下面是我尝试过的代码,但它不起作用

    jQuery(document).ajaxComplete(function( event, xhr, settings ) {   
    if(xhr.status == 403){
            console.error('403 response');
        }
    });

任何有关如何捕获此类错误的帮助都将非常有用,谢谢。

最佳答案

文档类型的请求不是通过ajax加载的,它要么是根文档,要么是<iframe> .

如果是根文档,您无法“检测”故障,因为未加载检测故障本身的代码(所有逻辑和标记都是此根文档的一部分)。

如果是<iframe>您可以使用onload事件来检测文档加载。如果您位于同一域,则只需检查 iframe 响应的相关内容即可检测响应代码并相应地显示消息。 检查此答案以了解有关 iframe 错误检测的其他可能的解决方法 - How to detect an error 404 in an iframe?

关于javascript - 我如何捕获类型为 "document/html"的请求中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63886525/

相关文章:

javascript - 从 localStorage 存储和加载下拉选择

php - 错误控制台显示 "function not defined"

javascript - 如何将 Webpack 4 插件转换为 Webpack 5

javascript - 使用scrollspy 和 jQuery 将第一个菜单项在加载时设为红色

javascript - 按数据属性查找和删除项目

javascript - Cloudinary + Sails.js 直接上传不起作用

javascript - 在 jQuery 选择菜单之后捕获数据属性

jquery - 如何更改图像的背景颜色?

javascript - jQuery 和原型(prototype)不能与 Array.prototype.reverse 一起工作

javascript - 如何在动态创建具有某些类的元素时引发 jquery 事件