Los preprocesadores y posprocesadores son una función clave en Apidog. Cuando envía una petición, puede usar preprocesadores para controlar dinámicamente su petición, o usar posprocesadores para gestionar la respuesta recibida.Apidog proporciona una interfaz visual de arrastrar y soltar para las operaciones previas y posteriores a la petición, que complementa los enfoques tradicionales basados en scripts. Esta interfaz visual le permite configurar operaciones comunes sin escribir código, al mismo tiempo que admite scripts personalizados para casos de uso avanzados.Inicio rápido#
Estos son los pasos para usar preprocesadores y posprocesadores en Apidog:1
Abra cualquier endpoint y vaya a la pestaña
Run (modo Design-first) o a la pestaña
Request (modo Request-first).
2
Cambie a la sección Pre Processors o Post Processors, pase el cursor sobre + Add y seleccione el procesador deseado.
3
Complete los campos necesarios para el procesador agregado.
4
Haga clic en Send, y la petición se ejecutará con los preprocesadores/posprocesadores configurados.
5
En el modo Design-first, haga clic en
Save as case para guardar la petición. En el modo Request-first, haga clic en
Save o
Save as case para guardar la petición.
También puede crear una petición independiente y aplicarle preprocesadores/posprocesadores. Sin embargo, recomendamos aprovechar los preprocesadores/posprocesadores sobre la especificación del endpoint para que la depuración y las pruebas sean más ágiles.
Capacidades#
Los preprocesadores y posprocesadores pueden lograr colectivamente varias funcionalidades:Preprocesadores#
Configuración de parámetros de petición: Defina dinámicamente los datos de entrada para el endpoint de la API.
Configuración de encabezados: Especifique encabezados como Content-Type, Accept y Authorization.
Autenticación: Agregue tokens, claves de API o credenciales para endpoints protegidos.
Integración de bases de datos: Recupere valores de una base de datos para usarlos como parámetros de petición.
Cifrado: Proteja la carga útil de la petición antes de la transmisión.
Posprocesadores#
Aserciones: Valide la respuesta recibida frente a los resultados esperados (códigos de estado, contenido del cuerpo, etc.).
Extracción de variables: Extraiga valores de la respuesta para usarlos en peticiones posteriores.
Operaciones de base de datos: Escriba datos de respuesta en una base de datos para su almacenamiento o actualización.
Visualización de datos: Genere informes o representaciones visuales de los datos de respuesta.
Ciertas operaciones previas y posteriores pueden activar solicitudes de autorización de seguridad al acceder a bases de datos, invocar programas externos o cargar dinámicamente paquetes npm. Puede navegar a la configuración de Security para preconfigurar el alcance de estas autorizaciones. Procesadores disponibles#
Apidog admite los siguientes preprocesadores/posprocesadores:| Procesador | Tipo | Descripción |
|---|
| Assertion | Post | Defina reglas de validación para comprobar los datos de respuesta frente a los valores esperados (código de estado, cuerpo, encabezados). |
| Extract Variable | Post | Extraiga valores de la respuesta (JSON, XML, Text) y almacénelos como variables mediante JSONPath o XPath. |
| Database Operation | Pre/Post | Conéctese a bases de datos SQL/NoSQL para ejecutar consultas. Los resultados se pueden almacenar como variables. |
| Custom Scripts | Pre/Post | Escriba código JavaScript personalizado para gestionar lógica compleja. Acceda a datos de petición/respuesta y variables de entorno. |
| Public Scripts | Pre/Post | Cree fragmentos de script reutilizables compartidos entre varios procesadores o escenarios. |
| Wait | Pre/Post | Introduzca un retraso antes o después de una petición, útil para simular latencia del mundo real. |
Recomendamos usar el Apidog Script Generator para simplificar la escritura de scripts. Describa su lógica en lenguaje natural y el generador creará un script ejecutable para usted. Orden de ejecución#
Los preprocesadores y posprocesadores se pueden configurar en varios niveles:1.
Nivel de ejecución/caso de endpoint (predeterminado): Afecta solo a la ejecución/caso actual.
2.
Nivel de endpoint: Se aplica a todos los casos asociados con el endpoint.
3.
Nivel de carpeta: Afecta a todos los endpoints dentro de la carpeta.
4.
Nivel de proyecto: Se aplica a todas las peticiones dentro del proyecto (alcance más alto).
La ejecución fluye desde el nivel más alto (proyecto/carpeta) hasta el nivel específico de ejecución/caso.Visualización de la ejecución#
Un conjunto de preprocesadores en una petición puede tener este aspecto:En la captura de pantalla anterior:Los tres primeros procesadores están agrupados bajo Inherit from parent. Están definidos en la carpeta raíz, en carpetas específicas (por ejemplo, "Pets") o en el propio endpoint.
Estos procesadores heredados son de solo lectura en la ejecución actual, pero se pueden activar o desactivar.
El último procesador es un script personalizado agregado específicamente para esta ejecución y se puede editar directamente.
Sustitución de variables#
Es posible que observe un paso llamado Variable Substitution & Inherit from Parents. Este preprocesador especial reemplaza marcadores de posición como {{variable}} por sus valores reales.Comportamiento predeterminado: La mayoría de los preprocesadores se ejecutan antes de la sustitución de variables.
Posterior a la sustitución: Algunos scripts (por ejemplo, firma de API) deben ejecutarse después de que se reemplacen las variables. Puede arrastrar manualmente estos procesadores debajo del paso "Variable Substitution".
Flujo de ejecución completo#
El orden de ejecución detallado para una sola petición es el siguiente: