Chrome Dev Tools: ¿Cómo rastrear la red para un enlace que abre una nueva pestaña?

236

Quiero rastrear la actividad de la red que ocurre cuando hago clic en un enlace. El problema es que el enlace abre una nueva pestaña, y aparentemente Dev Tools funciona por pestaña para la que estaba abierto. "Conservar registro al navegar" no ayuda.

Mi solución actual es pasar a FireFox y HttpFox, que no tiene este problema. Me pregunto cómo se las arreglan todos los desarrolladores de Chrome, esto suena bastante básico (por supuesto, busqué la respuesta, no encontré nada útil).

davka
fuente
Como esta pregunta recibe mucha atención, comencé a preguntarme si puedo proporcionar una mejor solución. ¿Hacer que todos los enlaces se abran en la misma pestaña funcionaría?
Konrad Dzwinel
@KonradDzwinel Esta fue una tarea única para mí y seguí adelante, así que no puedo decírtelo. Si le interesa intentar escribir una respuesta, me complacerá aceptarla.
davka
1
Si desea esto como una característica, no dude en destacar este error de Chromium: code.google.com/p/chromium/issues/detail?id=410958
phsource

Respuestas:

220

Consulte chrome://net-internals/#events(o chrome://net-exporten la última versión de Chrome) para obtener una descripción detallada de todos los eventos de red que suceden en su navegador.


Otra posible solución, dependiendo de su problema específico, puede ser habilitar 'Conservar registro' en la pestaña 'Red':

DevTools> Red> Conservar registro

y forzar que todos los enlaces se abran en la misma pestaña ejecutando el siguiente código en la consola:

[].forEach.call(document.querySelectorAll('a'),
    function(link){
        if(link.attributes.target) {
            link.attributes.target.value = '_self';
        }
    });

window.open = function(url) {
    location.href = url;
};
Konrad Dzwinel
fuente
13
gracias, esto es genial, pero quiero la lista como en las herramientas de desarrollo (solicitudes y respuestas con todos los encabezados), solo para otra pestaña
davka
Esto es muy interesante particularmente si agrega el filtro type:URL_REQUEST, pero no parece contener la misma información que la pestaña Red. Por ejemplo, parece eliminar datos de cookies tanto para solicitudes como para respuestas.
Patrick M
3
document.querySelectorAll('a,form')También afectaría a las formas.
jgb
1
Desearía poder votar esto dos veces. Hice un script de contenido para Chrome que hace esto en una tecla de acceso rápido, y literalmente me salvó horas de mi vida.
polkovnikov.ph
1
Chrome muestra "Se ha eliminado el visor de eventos net-internals y la funcionalidad relacionada. Utilice chrome: // net-export para guardar los registros de red y la catapulta externa netlog_viewer para verlos". , pero chrome: // net-export funciona de maravilla.
Jordania el
109

La solicitud de función mencionada en el comentario de phsource ha sido implementada.

En versiones recientes (comenzando con Chrome 50), puede ir al menú de Configuración de Herramientas de desarrollador (abrir Herramientas de desarrollador, luego usar el menú de 3 puntos o presionar F1) y marcar la casilla que dice "Abrir automáticamente DevTools para ventanas emergentes".


fuente
13
Funciona bien, excepto que es un poco complicado habilitar "Conservar registros" inmediatamente una vez que se abre la ventana.
Erwin Mayer
Debería actualizar su respuesta, ya que la versión estable de Chrome actualmente es 55
Lulu
55
Suspiro, sin embargo, la nueva ventana no tiene <Preserve Logs> activado. ¿Qué les pasa a los ingenieros de Chrome?
Pacerier
Use esto en combinación con stackoverflow.com/a/29029881/145400 (una excelente respuesta a "Chrome Dev Tools: ¿es posible mantenerse abierto incluso después de que se cierra la ventana?").
Dr. Jan-Philip Gehrcke
use el menú de 3 puntos o presione> página de preferencias> DevTools> "Abrir automáticamente DevTools para ventanas emergentes"
holly
27

En Chrome 61.0.3163.100 ahora tiene la siguiente opción disponible. Se accede yendo a la Configuración de Chrome Dev Tools. Está en el fondo.

Configuración del inspector web

Konrad Piascik
fuente
3
Desafortunadamente, esto no activa "Conservar registros" en la ventana recién abierta, por lo que si obtiene una nueva ventana y una redirección en dicha ventana, el registro de red se borrará y comenzará después de la redirección.
enero
44
La configuración, para aquellos que no quieren hacer clic en el enlace para ver la imagen, es "Abrir automáticamente DevTools para ventanas emergentes", bajo el título "DevTools". Otras configuraciones disponibles: "Conservar registro", en "Red"; "Conservar registro al navegar" en "Consola".
hlongmore
2
Esto funciona para mí (Chrome 76), y está activando "Preserve Logs" cuando se inician las herramientas de desarrollador de ventanas emergentes. ¿Esto lo puedo activar si tengo activada la configuración de Preserve Log?
Vince Bowdren
11
  • Agregar / actualizar el enlace a target="_self"
  • Marque "conservar registros al navegar" en la pestaña Red.
  • Haga clic en el enlace y obtiene su solicitud registrada
Sebastien Lorber
fuente
10

Puedes hacerlo de esta manera:

  1. establezca target = "any_window_name" en el enlace deseado.
  2. haga clic en ese enlace una vez, para abrirlo en una nueva pestaña.
  3. En la pestaña abierta, abra las herramientas de desarrollador.
  4. regrese a la página de origen y presione ese enlace nuevamente.

    El resultado se cargará en una ventana ya preparada con las herramientas de desarrollador abiertas.

    Puede activar la opción "preservar registro" en las herramientas de desarrollo (consulte la excelente respuesta de Konrad Dzwinel) para detectar el tráfico de redireccionamiento en ese enlace.

    Nota : la mayoría de las personas familiarizadas con el destino del enlace ∈ {_self, _blank, _parent, _top}. Pero en realidad se puede dar cualquier nombre, esto abrirá una nueva ventana con ese nombre, y cualquier clic posterior en enlaces, formularios o ventanas. Se abrirá en la misma ventana abierta con el mismo valor objetivo. lecturas adicionales - mdn: window.open , mdn: <a> etiqueta

Michael L.
fuente
Muchas gracias por este consejo, nunca lo habría pensado. Exactamente lo que necesitaba. Funciona en varias ventanas (al menos en Chrome), si alguien que lee esto quiere ver cómo se comportan dos páginas al mismo tiempo.
Mark Ormesher
3

En caso de que el enlace abierto no redirija, puede abrir la pestaña Red en la nueva pestaña y luego actualizar la pestaña.

orgads
fuente
0

* Descargo de responsabilidad: publicado por el desarrollador de HttpWatch *

HttpWatch en Windows puede registrar el tráfico de red generado cuando se abre una nueva pestaña o ventana de Chrome al habilitar la grabación automática en Herramientas-> Opciones-> Grabación. En la nueva ventana, haga clic en el icono HttpWatch para ver el seguimiento de la red.

La versión gratuita proporcionará información básica como URL, código de estado y tiempo transcurrido para cada solicitud.

* Descargo de responsabilidad: publicado por el desarrollador de HttpWatch *

HttpWatchSupport
fuente