Capturar HTTP/HTTPS de WKWebView en iOS 18 con Proxyman

Imagen de portada de Capturar HTTP/HTTPS de WKWebView en iOS 18 con Proxyman

1. Problemas

Al trabajar con WKWebView, resulta muy difícil capturar el tráfico de red (HTTP/HTTPS) porque WKWebView no respeta la configuración de proxy del sistema.

WKWebView no ofrece una pestaña de consola de red como Safari.

Por eso, no hay formas sencillas de capturar el tráfico de red de WKWebView.

Este artículo cubre lo siguiente:

  • Cómo capturar tráfico HTTPS de WKWebView en iOS 17 o iOS 18 con Proxyman

2. Solución

Desde iOS 17 y iOS 18, WKWebView incorpora proxyConfigurations en WKWebsiteDataStore. Esto nos permite configurar el proxy de WKWebView. Aprovechando esta función, podemos capturar fácilmente el tráfico de red de WKWebView.

Puedes consultar la documentación aquí: https://developer.apple.com/documentation/webkit/wkwebsitedatastore/4264546-proxyconfigurations

Este tutorial muestra cómo capturar el tráfico de red de WKWebView en iOS 17/18 con Proxyman.

2.1. Requisitos previos

  1. Descarga Proxyman desde el sitio web de Proxyman

2.2. Configuración

  1. Abre tu proyecto en Xcode
  2. Busca la instancia actual de WKWebView y añade el siguiente código
lazy var webView: WKWebView = {
    let webConfiguration = WKWebViewConfiguration()

    // ✅ define Proxy Setting to Proxyman
    let httpProxy = ProxyConfiguration(
        httpCONNECTProxy: NWEndpoint.hostPort(
            host: NWEndpoint.Host(
                "127.0.0.1"
            ),
            port: NWEndpoint.Port(
                integerLiteral: 9090
            )
        )
    )

    // ✅ Tell WKWebView to use the Proxy
    let dataSource = WKWebsiteDataStore.default()
    dataSource.proxyConfigurations = [httpProxy]
    webConfiguration.websiteDataStore = dataSource
    
    // init view
    let webView = WKWebView(
        frame: .zero,
        configuration: webConfiguration
    )
    webView.translatesAutoresizingMaskIntoConstraints = false
    return webView
}()
  • Asegúrate de reemplazar 127.0.0.1 y 9090 por la IP y el puerto de Proxyman, que son los valores predeterminados.
  • Si pruebas en un dispositivo real, necesitas la dirección IP de tu macOS, que aparece en la barra de herramientas de Proxyman, en la parte superior de la ventana.
Barra de herramientas de Proxyman
Barra de herramientas de Proxyman

Simulador de iOS

  • Instala el certificado en tu simulador de iOS abriendo Proxyman -> menú Certificate -> Install to iOS -> Simulator -> sigue las instrucciones
Instalar el certificado en el simulador de iOS
Instalar el certificado en el simulador de iOS

iPhone/iPad reales

Instalar el certificado en iPhone/iPad
Instalar el certificado en iPhone/iPad
  • Instala el certificado en tu iPhone/iPad abriendo Proxyman -> menú Certificate -> Install to iOS -> Physical Device -> sigue las instrucciones

3. ✅ Vuelve a cargar tu app de iOS y revisa el tráfico en Proxyman

  • Todo el tráfico de WKWebView se capturará y mostrará en Proxyman.
  • Funciona con HTTP/HTTPS de cualquier biblioteca de terceros, como fetch, axios, XMLHttpRequest, etc.
Capturar tráfico HTTPS de WKWebView
Capturar tráfico HTTPS de WKWebView

4. Próximos pasos

  • Puedes usar el filtro de Proxyman para aislar el tráfico que quieres depurar.
  • También puedes usar la función Replay de Proxyman para reproducir el tráfico que quieres depurar.

Consejo importante sobre la configuración

Mantén esta configuración de proxy solo en una compilación de depuración y no la incluyas en la compilación de App Store. Usa 127.0.0.1 únicamente con un simulador en el mismo Mac; un dispositivo físico necesita la IP del Mac que muestra Proxyman. Aplica el proxy antes de crear el WKWebView. Las conexiones existentes pueden seguir usando la ruta anterior, así que vuelve a crear la web view o su almacén de datos (data store) si cambias el proxy durante una sesión.

Noah Tran
Noah Tran

Revisado el 18 de julio de 2026. Se amplió la guía para ir más allá de iOS 18 y se añadieron consejos sobre compilaciones de depuración seguras y la conexión.

Mira las llamadas de red dentro de tu WKWebView

Haz que un WKWebView de depuración use Proxyman e inspecciona las cargas de página, las llamadas a la API, las cabeceras y los cuerpos de respuesta.

Descargar Proxyman para Mac