Reglas de reescritura y puntos de interrupción
La captura te permite “mirar”; las reglas y los puntos de interrupción te permiten “cambiar”. Trace Eagle te convierte en el dueño de tu tráfico: cambia solicitudes sin escribir código, usando reglas de apuntar y hacer clic simples y directas para reescribir automáticamente miles de flujos; o usa puntos de interrupción para pausar y editar los flujos de uno en uno; solo para la lógica compleja que las reglas realmente no pueden expresar necesitas recurrir a scripts / plugins.
1. Reglas de reescritura (apuntar y hacer clic, cambios automáticos)
Sección titulada «1. Reglas de reescritura (apuntar y hacer clic, cambios automáticos)»La peor manera de empezar a cambiar solicitudes es escribiendo un script. Aquí no hace falta: elige una acción de una hoja de referencia y rellena un valor, y eso es una regla: simple, intuitiva, y aplicada en el momento en que la creas.
Las reglas van una por línea, con la forma <match> <action>://<value> (por ejemplo *.example.com resHeaders://X-Debug: 1). Las líneas en blanco y los comentarios # se ignoran, cada línea se valida por sí sola, y los cambios se aplican en caliente al guardar; las reglas se pueden organizar en grupos con nombre y activarse o desactivarse grupo por grupo. La interfaz incluye una hoja de referencia con clic: haz clic una vez para insertar el ejemplo correspondiente, y luego solo edita el valor, sin sintaxis que memorizar.

Condiciones de coincidencia flexibles
Sección titulada «Condiciones de coincidencia flexibles»- Dominio exacto:
traceeagle.com(puede incluir un prefijo de rutatraceeagle.com/path) - Subdominio con comodín:
*.traceeagle.com(coincide con el dominio raíz más todos los subdominios) - Expresión regular contra la URL completa:
regex://… - URL completa exacta:
$https://host/path - Puerto:
:8080 - Negación: antepón
!a cualquier coincidencia
Acciones de reescritura soportadas
Sección titulada «Acciones de reescritura soportadas»Dirección de la solicitud
- Redirección / reenvío: cambia la IP de destino marcada (
host), mapea a una URL completa diferente (map-remote, puede apuntar a un servidor de desarrollo local), enruta a través de un proxy http/socks5 superior, o restaura las características de red de la solicitud de un cliente a las de un cliente estándar (reproducción fiel). - Mock de datos falsos:
mock://200omock://200|<body>, devuelve una respuesta preestablecida sin llegar al servidor, un salvavidas cuando el frontend está esperando una API del backend. - Editar la línea de solicitud / cabeceras: método, User-Agent, Referer, autenticación Basic, X-Forwarded-For, Content-Type / charset, Cookie, fusionar parámetros de consulta, buscar y reemplazar en la URL.
- Editar el cuerpo de la solicitud: reemplazo completo / buscar y reemplazar / añadir al final / añadir al principio / volcar a un archivo local.
Dirección de la respuesta
- Editar estado / cabeceras: cambia el código de estado, añade o elimina cualquier cabecera de respuesta, Set-Cookie, abre CORS con un solo clic, fuerza una descarga como adjunto, control de caché (deshabilitar el cacheo o fijar max-age), deshabilitar Cookie/compresión/keep-alive, buscar y reemplazar en el valor de las cabeceras.
- Editar el cuerpo de la respuesta: reemplazo completo / buscar y reemplazar / añadir al final / añadir al principio / fusión JSON superficial.
- Inyectar por tipo: solo cuando el Content-Type coincide, inyecta o reemplaza scripts, estilos o fragmentos en HTML / JS / CSS.
Red y protocolo
- Volcar a archivo: además del cuerpo de la solicitud / respuesta, la solicitud / respuesta completa en bruto también se puede volcar a un archivo local con un solo clic, para archivado o análisis sin conexión.
- Simulación de red deficiente: retardo de la solicitud / respuesta (milisegundos), limitación del ancho de banda (con ajustes preestablecidos de 2G / 3G / 4G).
- Reescritura de tramas WebSocket: reemplazo
old=>newpor dirección (ambos sentidos / cliente a servidor / servidor a cliente). - Reescritura de TCP / UDP en bruto: reemplazo por dirección en flujos de bytes que no son HTTP / datagramas UDP de SOCKS5.
Valores dinámicos en las reglas
Sección titulada «Valores dinámicos en las reglas»Los valores de las reglas pueden usar variables dinámicas como ${url} ${host} ${port} ${method} ${status} ${now} ${random} ${randomUUID} ${req.headers.X} ${res.headers.X}, además de valores con nombre personalizados {name} (define un valor común una vez, refiérete a él en todas partes). Los valores con nombre {name} se usan principalmente en las reescrituras de solicitud / respuesta; los valores de reemplazo de la reescritura de tramas WebSocket admiten ${...}.
2. Puntos de interrupción (edición manual)
Sección titulada «2. Puntos de interrupción (edición manual)»Para los flujos que necesitan un control preciso, caso por caso, usa un punto de interrupción para pausar y mostrar un editor antes de que se envíe la solicitud o antes de que regrese la respuesta.
Dos formas de activarlos
Sección titulada «Dos formas de activarlos»- Activado por regla: usa una regla
breakpoint://req|res|bothpara marcar con precisión qué flujos interceptar. - Interruptor global de intercepción: activa la intercepción para toda la sesión, y luego, opcionalmente, acota el alcance con reglas de filtrado de intercepción (filtrar por dominio / método / etapa); sin reglas, se intercepta todo.
Qué puedes cambiar una vez interceptado
Sección titulada «Qué puedes cambiar una vez interceptado»- Etapa de solicitud: método, URL (el host sigue a la URL), cabeceras, cuerpo.
- Etapa de respuesta: código de estado, cabeceras de respuesta, cuerpo de la respuesta.
- Descartar directamente: Abort descarta esta solicitud / respuesta (el cliente recibe un error de pasarela).
- Los flujos que coinciden con varios aciertos se ponen en cola para que los gestiones: puedes reanudar cada uno (Resume), descartarlo (Abort), o reanudarlos todos a la vez. Los flujos que quedan sin gestionar durante mucho tiempo se reanudan automáticamente sin cambios, de modo que el tráfico nunca queda atascado indefinidamente.
3. Scripts y plugins (automatización avanzada)
Sección titulada «3. Scripts y plugins (automatización avanzada)»Para la lógica que las reglas no pueden expresar, entrégasela a un script o plugin:
- Scripts de JavaScript: define
onRequest(req)/onResponse(resp)y edita los campos directamente para que surtan efecto. Los ayudantes integrados incluyen registro (logging), llamadas salientes síncronas a otros servicios, almacenamiento de datos entre solicitudes (para contadores / tokens en caché), codificación/decodificación Base64, y más. - Plugins salientes HTTP: usa una regla
plugin://namepara entregar la solicitud / respuesta a tu propio servicio de plugin para su procesamiento (llamado por HTTP), y el plugin devuelve el contenido reescrito (o lo simula directamente). Independiente del lenguaje, adecuado para que los equipos implementen procesamiento personalizado en cualquier lenguaje.
4. Orden de procesamiento
Sección titulada «4. Orden de procesamiento»Un flujo pasa, en orden, por: reglas de solicitud, scripts de solicitud, plugins de solicitud, punto de interrupción de solicitud, reenvío / mock, reglas de respuesta, scripts de respuesta, plugins de respuesta, punto de interrupción de respuesta. El patrón es simple: primero las reglas automáticas, luego los scripts, luego los plugins, y solo al final interviene un punto de interrupción de forma manual, cada uno haciendo su propio trabajo sin pisar a los demás.
Volver a Captura con proxy · Relacionado: Componer y reproducir