Intentando usar fetch and pass en modo: no-cors
Puedo alcanzar este punto finalhttp://catfacts-api.appspot.com/api/facts?number=99
a través del cartero y vuelveJSON
Además, estoy usando create-react-app y me gustaría evitar configurar cualquier configuración de servidor.
En mi código de cliente estoy tratando de usarfetch
hacer lo mismo, pero me sale el error:
No hay encabezado 'Access-Control-Allow-Origin' presente en el recurso solicitado. Origen 'http: // localhost: 3000'por lo tanto, no se permite el acceso. Si una respuesta opaca satisface sus necesidades, configure el modo de solicitud en 'no-cors' para recuperar el recurso con CORS deshabilitado.
Así que estoy tratando de pasar un objeto a mi Fetch que deshabilitará CORS, así:
fetch('http://catfacts-api.appspot.com/api/facts?number=99', { mode: 'no-cors'})
.then(blob => blob.json())
.then(data => {
console.table(data);
return data;
})
.catch(e => {
console.log(e);
return e;
});
Curiosamente, el error que obtengo es en realidad un error de sintaxis con esta función. No estoy seguro de mi actualfetch
está roto, porque cuando elimino el objeto {mode: 'no-cors'} y le proporciono una URL diferente, funciona bien.
También he tratado de pasar el objeto{ mode: 'opaque'}
, pero esto devuelve el error original de arriba.
Creo que todo lo que necesito hacer es deshabilitar CORS. ¿Qué me estoy perdiendo?