El javascript métodos de monitoreo error

Error Monitoring vernácula es encontrar errores que se producen cuando se ejecuta.

En primer lugar, la parte delantera de la clasificación errónea

1. Error de tiempo de ejecución instantánea: Código de error

console.log(a)

Mensaje de error:

2. Error de carga de recursos

Como CSS, JS error de carga de recursos

En segundo lugar, la captura de la manera incorrecta

1. instantánea corriendo por el camino equivocado a la captura

1) try ... catch

<input type="text" placeholder="请输入用户名" id="username">
<input type="password" placeholder="请输入密码" id="password">
<input type="button" value="提交" id="btn">
<p id="err"></p>


btn.onclick = function(){
try {
    if(!username.value) throw "用户名不能为空"
    if(!password.value) throw "密码不能为空"
}catch(e){
  err.innerHTML = `错误:${e} !`//抓住上面throw抛出的错误,给p标签显示
}finally{
  // 这里上面抱什么错都会显示
  console.log("请输入")
}
}

2) error window.onerror

  window.onerror = function(errorMessage, scriptURI, lineNumber,columnNumber,errorObj) { 
    console.log("错误信息:" , errorMessage); 
    console.log("出错文件:" , scriptURI); 
    console.log("出错行号:" , lineNumber); 
    console.log("出错列号:" , columnNumber); 
    console.log("错误详情:" , errorObj); 
  } 
<script type="text/javascript" src="error.js"></script> 

2. Error de carga de recursos

1) object.onerror (no capturado)

Por ejemplo img = new Imagen, img.οnerrοr = function

2) performance.getEntries () para obtener todos los recursos de carga cargados de vez en cuando, se pueden obtener indirectamente error de recurso.

Por ejemplo performance.getEntries (). ParaCada ((punto) => console.log (item.name)) adquirió la totalidad de los recursos ya cargados,

A continuación, obtener document.getElementsByTag ( 'xxx') para restar recursos ya cargados, es decir, no se cargan los recursos.

3) evento de captura de errores

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>错误监控</title>
  <script>
    window.addEventListener('error', function(e){
      console.log('捕获', e)
    }, true)
  </script>
</head>
<body>

  <script src="//baidu.com/test.js"></script>
</body>
</html>

Extensión: Error de ejecución js entre dominios puede cogerlo, qué error, cómo hacer frente a?

En primer lugar, antes de que el acuerdo no era así, son error de script

1. Añadir los atributos de las etiquetas de secuencia de comandos crossOrigin , tales como: <script type = "/ texto javascript" src = "// doitbegin.duapp.com/error.js" crossorigin> </ script>, el resultado impreso es como esto

2. La aparición de este error no es inesperado, ya que se estableció crossorigin hasta error.js, que error.js de encabezado de respuesta HTTP también debe establecerse no homóloga accesible. Js cabecera de la respuesta de recursos puesta a ControlAllow-Origen de acceso: *, esto se debe configurar en el servidor // * en nombre de todos al ejemplo php

En tercer lugar, los principios básicos de los errores de información

1. El uso de Ajax informe de comunicación bidireccional (que puede, pero generalmente no se usa de esta manera)

2. Utilice el Informe de la imagen del objeto (la forma habitual, sin depender de las bibliotecas de terceros)

(new Image()).src = 'http://baidu.com/tesjk?r=要上报的信息'

La solicitud ha sido enviado

Publicado 70 artículos originales · alabanza ganado 13 · vistas 9739

Supongo que te gusta

Origin blog.csdn.net/qq_38588845/article/details/104714575
Recomendado
Clasificación