Saltar al contenido principal

Map Remote

Usa Proxyman Map Remote para redirigir las solicitudes HTTP, HTTPS y WebSocket que coincidan a otro host, puerto o ruta, como localhost o un entorno de staging.

1. ¿Qué es?​

Map Remote (⌥⌘R) cambia el destino de una solicitud HTTP a un nuevo servidor, según tus reglas. Tu cliente recibe la respuesta del nuevo servidor como si nada hubiera cambiado.

Map Remote también admite mapear de HTTP a HTTPS y viceversa.

Ventana de Map Remote de Proxyman con las reglas Localhost to Production, Staging to Production y una regla Regex

Reglas de Map Remote

información

Consulta las configuraciones habituales de Map Remote al mapear de HTTP <-> HTTPS.

información

Desde Proxyman 4.3.0: Map Remote admite WebSocket y WebSocket seguro.

2. Beneficios​

  • Usa endpoints de producción en tu sitio de desarrollo para determinados endpoints, sin cambiar el código fuente
  • Usa endpoints de desarrollo en tu sitio de producción
  • Envía determinadas URLs de solicitud a distintos destinos
  • Reemplaza componentes de la solicitud, como Protocol, Host, Port, Path o Query, sobre la marcha
información

Para aumentar tu productividad, puedes usar la función Scripting para obtener el mismo resultado que con Map Remote escribiendo código JavaScript sencillo.

Por ejemplo, Snippet code para cambiar de un servidor de producción a uno localhost

3. Map Remote con solicitudes GraphQL​

Desde Proxyman 2.27.0+, Map Remote puede trabajar con solicitudes GraphQL mediante un QueryName concreto. Consulta el siguiente documento sobre GraphQL.

4. Usar Scripting como Map Remote ✅​

Si una regla de Map Remote es difícil de configurar, puedes hacerlo más fácilmente con la herramienta Scripting.

Consulta Map Remote Snippet Code para aprender a usar Scripting y lograr el mismo resultado que con Map Remote.

Por ejemplo, con Scripting es fácil hacer lo siguiente:

  • Mapear endpoints de v1 a v2
  • Mapear Production a Localhost
  • Mapear Localhost a Production
  • ...

5. Regla de coincidencia​

información

Proxyman admite expresiones regulares y comodines desde la versión 2.3.0. Consulta cómo usar comodines y Regex.

Podemos definir reglas de coincidencia con comodines o expresiones regulares.

En las solicitudes coincidentes, Proxyman intenta:

  • Reemplazar Protocol, Host, Port, Path y Query, si están definidos
  • Si un componente está vacío, no modifica ese componente de la solicitud coincidente
Editor de reglas de Map Remote de Proxyman que mapea http://localhost:3000/* a https://httpbin.proxyman.app

Editor de reglas de Map Remote

información
  • Deja un campo de texto en blanco para mantener sin cambios esa parte de la solicitud coincidente
  • No se permiten comodines en los campos Map To

Depuración​

Para saber qué regla de Map Remote coincide con tu URL, abre la pestaña Summary de la solicitud:

  1. Selecciona tu solicitud
  2. Pestaña Summary -> Debugging Tools
  3. Comprueba la URL mapeada

Conservar el encabezado Host​

De forma predeterminada, Proxyman sobrescribe el encabezado Host para que coincida con el nuevo host de Map Remote. Esto es necesario para que la mayoría de las solicitudes se completen correctamente.

Si quieres mantener el encabezado Host original, marca la casilla "Preserve Host Header" al crear una nueva entrada. Proxyman conservará el valor de Host.

6. Cómo usarlo​

  • Haz clic con el botón derecho en la solicitud seleccionada -> Tools -> Map Remote…. Proxyman rellena los datos necesarios a partir de la solicitud seleccionada.
Menú contextual de Proxyman en una solicitud, con Tools > Map Remote... resaltado

Crear una regla de Map Remote a partir de una solicitud

7. Usos habituales​

7.1 Mapear Localhost (HTTP) a Production (HTTPS)​

Resultado:

URL originalURL de destino
http://localhost:3000https://proxyman.io
http://localhost:3000/pricinghttps://proxyman.io/pricing
http://localhost:3000/v1/user?id=123\&name=proxymanhttps://proxyman.io/v1/user?id=123\&name=proxyman
POST http://localhost:3000/loginPOST https://proxyman.io/login

7.2 Mapear Production (HTTPS) a localhost (HTTP)​

URL originalURL de destino
https://proxyman.iohttp://localhost:3000
https://proxyman.io/v1/user?id=123\&name=proxymanhttp://localhost:3000/v1/user?id=123\&name=proxyman
POST https://proxyman.io/loginPOST http://localhost:3000/login

7.3 Mapear una URL concreta a otro host​

  • Regla: https://proxyman.io/v1/user (por ejemplo)
  • Selecciona Any y Wildcard
  • Desmarca Include all subpaths of this URL: al desmarcarla, no se mapean las demás subrutas

Map To:

  • Protocol: https
  • Host: nuevo host (p. ej., staging.proxyman.io)
  • Port: 443 (tu puerto local)
  • Deja Path y Query vacíos

Resultado:

URL originalURL de destino
https://proxyman.iohttps://proxyman.io (no aplica la regla)
https://proxyman.io/v2/settinghttps://proxyman.io/v2/setting (no aplica la regla)
https://proxyman.io/v1/user?id=123\&name=proxymanhttps://staging.proxyman.io/v1/user?id=123\&name=proxyman

7.4 Mapear WebSocket de localhost a Production​

URL originalURL de destino
ws://localhost:4000wss://ws.postman-echo.com
ws://localhost:4000/websocketwss://ws.postman-echo.com/websocket

7.5 Mapear WebSocket de Production a localhost​

URL originalURL de destino
wss://ws.postman-echo.comws://localhost:3000
wss://ws.postman-echo.com/websocketws://localhost:3000/websocket

Más información​