Estoy usando https://add0n.com/access-control.html para eludir la política CORS para una extensión que estoy creando, sin embargo, recibo este error:
Access to XMLHttpRequest at 'https://myexampleapi.com/' from origin 'https://www.somedomain.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
Este es el código que estoy usando para acceder a la API:
var xmlHttp = new XMLHttpRequest(); xmlHttp.open("GET", 'https://api.example.com/test/getstats?userId=76561399568194663', true); xmlHttp.setRequestHeader("ApiKey", "13cf02fb-fake-442f-f7cc-9ee44g48748b"); xmlHttp.onreadystatechange = function() { if (xmlHttp.readyState === 4) { console.log(xmlHttp.responseText) } } xmlHttp.send(null);
Este error SOLO ocurre en Chrome y Firefox no tiene problemas. Llevo 8 horas buscando y me estoy desesperando. ¿Algún consejo para solucionar esto?
Así que encontré una solución. Terminé configurando un servidor proxy usando PHP que usa CURL para llamar a la API por mí. De esta manera, tendría que pasar un encabezado personalizado que me impedía pasar por alto CORS en Chrome. Funciona de maravilla, pero realmente esperaba no tener que hacer esto, así que si alguien tiene alguna idea mejor, házmelo saber.