es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Configuración de proxy para aplicaciones basadas en CRA en modo de producción

Para configurar un proxy en modo de desarrollo, podemos agregar proxy a package.json de la siguiente manera:

"proxy": "http://localhost:4000"

Sin embargo, este método no funciona en la construcción de producción para aplicaciones basadas en CRA, ya que es una característica exclusiva del modo de desarrollo.

¿Cuáles son las formas de configurar un proxy cuando la API y el paquete del cliente se alojan en diferentes dominios y no se tiene acceso para configurar el servidor que sirve el paquete del cliente (por ejemplo, el paquete del cliente se sirve en Netlify y la API en Heroku)?

Se hicieron preguntas similares en la sección de comentarios de varios temas, como 1 y 2, pero no hubo respuestas.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Si la API y el paquete del cliente están alojados en diferentes dominios y no hay acceso para configurar el servidor que sirve el paquete del cliente, hay algunas formas de configurar un proxy:

    1. Utilizar un servicio de terceros como CORS Anywhere para hacer un proxy de las solicitudes de la API. CORS Anywhere es un proxy de Node.js que agrega encabezados CORS a la solicitud que se está proxyzando. Esto permitirá que el cliente envíe solicitudes a la API incluso si está alojada en un dominio diferente. Sin embargo, este enfoque puede no ser adecuado para datos sensibles, ya que requeriría enviar todas las solicitudes de la API a través de un servicio de terceros.
    2. Configurar un proxy inverso en el servidor que aloja el paquete del cliente. Esto se puede hacer utilizando un software como NGINX. El proxy inverso reenviará las solicitudes a la API alojada en un dominio diferente. Este enfoque requiere acceso a la configuración del servidor y ciertos conocimientos de administración del servidor.

    3. Si la API admite el intercambio de recursos entre dominios (CORS), entonces el cliente puede hacer solicitudes directamente a la API sin necesidad de un proxy. Sin embargo, esto requiere que la API esté configurada para permitir solicitudes entre dominios.

    En general, es importante considerar las implicaciones de seguridad de cada enfoque y elegir el que mejor se adapte al caso de uso específico.

Comments are closed.