Problema con CORS en IONIC 4

Tengo prolemas cuando realizo una peticion HTTP desde la aplicacion a una API, En ambiente de desarrollo se soluciona agregando el complemento que habilite el CORS en el navegador. Sin embargo, al generar la aplicacion como PWA o Android, el error persiste y no se ejecutan las peticiones HTTP. he intentado con proxies pero no funciona. Si alguien me puede ayudar con una solucion definitiva le agradezco. al momento mi metodo es el siguiente

sendPostRequest(user: string, password: string) {
const httpOptions = {
headers: new HttpHeaders({
‘Content-Type’: ‘application/json’
})
};
const postData = {
“user”: user,
“password”: password
}
return this.http.post(‘http://DOMINIO/SUBDOMINIO/SERVICIOS/ingresoapp’,
postData, httpOptions);
}

Você esta consumindo um serviço seu, ou de terceiros?

Si, una api de un tercero. Por cuestiones de seguridad no publico la direccion de la API, ya que han deshabilitado todas las seguridades y no funciona

Você consegue fazer a requisição para a API usando o Postman? ou ele também da problema de CORS?

Cuando utilizo Postman se ejecuta normalmente la peticion y se recibe la respuesta, En el navegador Firefox Developer con la extension CorsE.
Por ejemplo para este peticion, en postman se envia esta peticion
{‘user’:‘Prueba’,‘password’:‘123’}

i don’t understand your language but cors policy error…
you need to use chrome extension-> https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi

Minhas requisições são feitas assim, mas no meu servidor está marcado para receber o CORS:

        let headers = new Headers();
        headers.append('Content-Type', 'application/json');
        headers.append(KEY_TOKEN, token);

        const header = {
            headers:headers,
            timeout: TIMEOUT
        };

        const reponse = this.http.post(url, body, header);

        return new Promise((resolve, reject) => {
            reponse.subscribe(res => {
                resolve(res);
            }, err => {
                this.trataErros(err);
                reject(err);
            });
        })
1 Like