Creé un sitio web ideahubbd.com que tiene 2 secciones llamadas "servicio" e "ideas" que son datos dinámicos. Que provienen de http://api.ideahubbd.com/ourservice.json y http://api.ideahubbd.com/ideas.json
en mi proyecto mientras lo ejecuto en localhost, está obteniendo esos datos de la API, pero cuando cargué la carpeta de build de reacción en el servidor, no está obteniendo esos datos.
¿Hay algo que me estoy perdiendo? ¿Es problema de la API?
en nginx del archivo de configuración de api.ideahubbd.com tengo esta configuración
server { # Binds the TCP port 80. listen 80; # Root directory used to search for a file root /var/www/html/ideahubbd_static_api; # Defines the file to use as index page index index.html index.htm; # Defines the domain or subdomain name. # If no server_name is defined in a server block then # Nginx uses the 'empty' name server_name api.ideahubbd.com; location / { # Return a 404 error for instances when the server receives # requests for untraceable files and directories. try_files $uri $uri/ =404; add_header Access-Control-Allow-Origin *; } }¿Hay algo que me estoy perdiendo?
En el siguiente enlace se explica el motivo de este problema y cómo solucionarlo. En resumen, quiero decirte que debido a que los servicios a los que estás llamando no tienen un certificado ssl y deben llamarse https, puedes ver fácilmente el error en la consola del navegador.
Después de buscar en StackOverflow, encontré la respuesta, había 2 formas de resolverlo. Lo primero es agregar SSL a la URL de la API.
y la segunda cosa que fue respondida originalmente aquí por @buzatto.
"eso está relacionado con el hecho de que la API se sirve en http mientras su sitio está cargado https, por lo que el navegador bloquea la solicitud.
dado que no tiene control sobre el hecho de que la API de terceros, puede resolver el problema agregando la metaetiqueta <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> "