Error al interactuar con la api guarani

Buenas tardes!

Estoy intentando interactuar con los metodos de la api de guarani, en mi caso lo tengo instalado con docker integracion las pruebas las estoy haciendo todas localmente. Dejo una parte del script:
const API_URL = “http://siu:8286/siu/guarani/ges/rest/v2/personas/2/datospersonales”;
const username= “admin”;
const password=“123456789*-a”;
fetch(API_URL, {
method:‘GET’,
headers: {
‘Access-Control-Allow-Origin’: ‘*’,
‘Authorization’: 'Basic ’ + btoa(username + ‘:’ + password)
}
})
.then((response)=> {
console.log(response);
});
Desde el browser puedo acceder a los datos http://siu:8286/siu/guarani/ges/rest/v2/personas/2/datospersonales sin problemas y desde el contenedor de guarani tambien.

El error de la consola es:
Access to fetch at ‘http://siu:8286/siu/guarani/ges/rest/v2/personas/2/datospersonales’ from origin ‘null’ 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. If an opaque response serves your needs, set the request’s mode to ‘no-cors’ to fetch the resource with CORS disabled.
GET http://siu:8286/siu/guarani/ges/rest/v2/personas/2/datospersonales net::ERR_FAILED
Uncaught (in promise) TypeError: Failed to fetch at index.html:19:9

Hola Valentin, parece ser un tema de CORS, te dejo unos hilos que quizás te sirvan:

https://es.stackoverflow.com/questions/352953/access-to-fetch-at-from-origin-null-has-been-blocked-by-cors-policy
https://www.youtube.com/watch?v=RyH3qu3smVI
https://stackoverflow.com/questions/43871637/no-access-control-allow-origin-header-is-present-on-the-requested-resource-whe
https://platzi.com/comunidad/como-habilitar-cors-en-una-peticion-a-una-api-con-js/
https://developer.okta.com/blog/2021/08/02/fix-common-problems-cors

La verdad que nunca consumimos las APIs con JS, siempre lo hacemos con PHP utilizando la librería Guzzle.

Lo extraño es que en los HEADERS envías Access-Control-Allow-Origin: * e igualmente falla, podes probar con mode: ‘no-cors’.

saludos.
2

Buenos dias! sí probe con mode: ‘no-cors’, pero tampoco funciono. Voy a probar con PHP utilizando la librería Guzzle.
Gracias. Saludos!

Hola Valentin,

¿probaste con JQUERY?

Igualmente vas a tener que lidiar con el problema de CORS:

Voy a probar con PHP utilizando la librería Guzzle.
Si, [url=https://docs.guzzlephp.org/en/stable/]Guzzle[/url] te va a permitir consumir los datos desde código PHP, luego se lo tendrás que pasar al JS siguiendo lo que querías hacer en el código de ejemplo. Toba ya carga y hace uso de dicha librería.

saludos.
2