Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

337
Vistas
¿Cómo resolver el error CORS al obtener una API externa?

Estoy desarrollando una aplicación web en Angular 10 que funciona de la siguiente manera:

Ilustración de arquitectura

Estoy lidiando con el problema CORS. No tengo permiso para agregar código al servidor que estoy buscando.

Quiero poder:

  1. Obtener el sitio web
  2. Analice el resultado y colóquelo en mi base de datos.

Mi objetivo es implementar la solución en un servidor Apache.

Aquí está el error CORS con el que estoy lidiando:

Bloqueo de una solicitud de origen cruzado: la política "Mismo origen" no permite ver el recurso remoto ubicado en https://wwwfrance1.CENSORED.eu.com/api/?apikey=CENSORED .

Motivo: falta el encabezado CORS "Access-Control-Allow-Origin". Código de estado: 200.

Esto es lo que he intentado:

  1. Uso de la extensión MOSIF mozilla (funciona, pero no es sostenible para la implementación y, por alguna razón, cuando ignoro la seguridad de CORS, ya no puedo publicar en mi base de datos)

  2. Agregar un encabezado en mi solicitud de búsqueda, como:

     /******API SEACH****/ /***Global Update***/ private updateClients() { let xmlRequestPromise = fetch('https://wwwfrance1.CENSORED.eu.com/api/?apikey=CENSORED&service=list_clients', { method: 'GET', headers: { 'Access-Control-Allow-Origin': '*', } }) .then(async response => this.clients = this.regexSearchClient(await response.text())) return xmlRequestPromise }

Pero eso tampoco funciona. He verificado que el encabezado aparece en la solicitud.

¿Cómo proceder?

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

¿Qué es CORS?

El intercambio de recursos de origen cruzado es un mecanismo que permite que los recursos restringidos en una página web se soliciten desde otro dominio fuera del dominio desde el que se sirvió el primer recurso. de wiki

En términos simples, solo un servidor web interno puede enviar solicitudes que son potencialmente peligrosas para su servidor web, y las solicitudes de otros servidores simplemente se bloquean.

Pero se permiten pocas solicitudes HTTP. Pocos de los métodos permitidos son GET, HEAD, POST.

¿Cómo resuelvo el problema?

Aparentemente, en esta circunstancia, no puede enviar una solicitud de recuperación a un servidor web que tenga un encabezado CORS. En su lugar, puede realizar una solicitud GET al servidor web, ya que un servidor web que tiene CORS permite solicitudes HTTP GET.

Nota : si envía una solicitud GET a un servidor web usando angular en su navegador, no funcionará, ya que las solicitudes GET de conversión del navegador en solicitudes de búsqueda y las solicitudes de búsqueda no están permitidas desde un servidor web con CORS. En su lugar, envíe una solicitud GET desde un servidor web/máquina local en lugar de un navegador.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Cree su propio servidor y haga una ruta que obtenga esa API. Desde su aplicación Angular, obtenga esa ruta en su servidor.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Tienes que usar un paquete como un middleware. Si está utilizando nodejs-framework expressjs. Al principio, debe ejecutar npm install cors -force Luego, agregue el código que se proporciona a continuación:

 const cors=require('cors') app.use(cors({origin:true}))
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda