HarGeneratorPlugin

Genera archivos de archivo HTTP (HAR) a partir de las solicitudes y respuestas interceptadas.

Ejemplo de configuración

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "HarGeneratorPlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
      "configSection": "harGeneratorPlugin"
    }
  ],
  "harGeneratorPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/hargeneratorplugin.schema.json",
    "includeSensitiveInformation": false,
    "includeResponse": true
  }
}

Propiedades de configuración

Propiedad Description Predeterminado
includeSensitiveInformation Determina si se debe incluir información confidencial (encabezados de autorización, cookies, etc.) en el archivo HAR generado. Cuando se establece en false, los valores de encabezados, cookies y parámetros de consulta confidenciales se redactan con el valor . REDACTED false
includeResponse Determina si se debe incluir el contenido del cuerpo de la respuesta en el archivo HAR generado. false

Opciones de línea de comandos

Ninguno

Observaciones

El formato HAR (archivo HTTP) es un formato basado en JSON para registrar transacciones HTTP. Varias herramientas lo admiten ampliamente y lo usan para:

  • Análisis del tráfico de red y el rendimiento
  • Interacciones de API de depuración
  • Uso compartido de datos de sesión HTTP
  • Importación en herramientas de desarrollo del explorador y otras herramientas de análisis

Cuando includeSensitiveInformation se establece en false, el complemento redacta automáticamente los siguientes encabezados confidenciales:

  • authorization
  • cookie
  • from
  • proxy-authenticate
  • proxy-authorization
  • set-cookie
  • www-authenticate
  • x-api-key
  • x-auth-token
  • x-csrf-token
  • x-forwarded-for
  • x-real-ip
  • x-session-token
  • x-xsrf-token

El complemento también reemplaza los valores de todas las cookies de solicitud y respuesta (request.cookies y response.cookies) por REDACTED, al tiempo que mantiene los nombres de las cookies.

Además, el complemento redacta los valores de los siguientes parámetros de consulta confidenciales (no distingue mayúsculas de minúsculas) tanto en la dirección URL de solicitud (request.url) como en la cadena de consulta (request.queryString). Otros parámetros de consulta conservan sus valores originales.

  • access_token
  • api_key
  • api-key
  • apikey
  • auth
  • client_secret
  • code
  • id_token
  • key
  • password
  • refresh_token
  • secret
  • sig
  • signature
  • token
  • x-amz-credential
  • x-amz-security-token
  • x-amz-signature
  • x-goog-credential
  • x-goog-signature

Por ejemplo, la dirección URL https://api.contoso.com/users?access_token=abc123&page=2 de la solicitud se registra como https://api.contoso.com/users?access_token=REDACTED&page=2.

El archivo HAR generado incluye:

  • Detalles de la solicitud HTTP (método, dirección URL, encabezados, parámetros de consulta, cookies)
  • Detalles de respuesta HTTP (estado, encabezados, cookies)
  • Datos del cuerpo de la solicitud y la respuesta (cuando corresponda)
  • Tipos y tamaños de contenido
  • Información de la versión HTTP

El complemento crea un archivo HAR denominado devproxy-{timestamp}.har en el directorio actual después de que se detenga la grabación.