Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

374
Visualizações
bloqueado por CORS, sin encabezado 'Access-Control-Allow-Origin': no funciona en react/axios pero funciona bien en python/requests

La siguiente solicitud de python está obteniendo datos de una API paga utilizando una clave de API privada, y la búsqueda funciona bien:

 import requests api_key = 'our_private_api_key' headers = { 'x-api-key': api_key } params = {} endpoint = 'our_api_endpoint_url' resp: dict = requests.get(endpoint, headers=_headers_builder(headers), params=params).json().get('response', {}) resp_data = resp.get('data', None)

Al buscar localmente en Javascript (React App) usando axios, intentamos con un código similar, pero en JavaScript (con la ayuda de useQuery de react-query):

 import { useQuery } from 'react-query'; import axios from 'axios' async function fetchLiveData() { const api_key = 'our_private_api_key'; const endpoint = 'our_api_endpoint_url'; const { data } = await axios.get(endpoint, { headers: { 'x-api-key': api_key } }); return data; } const { data, error, isError, isLoading: isLoading25 } = useQuery('posts', fetchLiveData);

... sin embargo, se arroja el siguiente error de esta búsqueda.

 Access to XMLHttpRequest at 'endpoint' from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

¿Se trata de un problema de host local, o se está omitiendo algún parámetro de la búsqueda de axios , o es un problema de permisos con el proveedor de la API? ¿O algo mas? ¿Cómo podemos solucionar este problema?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Supongo que python env está fuera del navegador y los navegadores bloquean las solicitudes de origen y su código del lado del cliente no tiene nada que hacer, la API es responsable de manejar este problema agregando un encabezado http "Access-Control-Allow- Origen: TU_DOMINIO O *" y dijiste que es una API paga y no puedes manejar esto, así que asumo que tienen un tablero de consola y creo que en su configuración puedes configurar (lista blanca) los orígenes aceptados y allí puedes agregar tu origin, localhost o permitir todos los orígenes.

about 4 years ago · Juan Pablo Isaza Relatório

0

Intente agregar 'Access-Control-Allow-Origin': '*', en los encabezados de axios. Localmente debería funcionar. ¡Buena suerte!

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda